有没有一种方法可以使Java中所有正在运行的线程都处于sleep()状态?

有没有一种方法可以使Java中所有正在运行的线程都处于sleep()状态?,java,multithreading,sleep,Java,Multithreading,Sleep,这都在标题里,真的。 我知道Thread.sleep()只会使当前线程睡眠,但是有没有办法强制所有线程同时睡眠,或者这是因为自我管理?从外部将线程置于睡眠状态是危险的,因为它当前可能处于某种中间状态(这就是为什么从外部终止线程不好的原因)。因此,请通过自我管理进行终止。从外部将线程置于睡眠状态是危险的,因为它当前可能处于某种中间状态(例如,这就是为什么从外部终止线程不好的原因)因此,请通过自我管理来实现。答案很简单:无法通过Java(从应用程序内部)使所有线程休眠 此外,在Java上,有许多内部

这都在标题里,真的。
我知道
Thread.sleep()
只会使当前线程睡眠,但是有没有办法强制所有线程同时睡眠,或者这是因为自我管理?

从外部将线程置于睡眠状态是危险的,因为它当前可能处于某种中间状态(这就是为什么从外部终止线程不好的原因)。因此,请通过自我管理进行终止。

从外部将线程置于睡眠状态是危险的,因为它当前可能处于某种中间状态(例如,这就是为什么从外部终止线程不好的原因)因此,请通过自我管理来实现。

答案很简单:无法通过Java(从应用程序内部)使所有线程休眠

此外,在Java上,有许多内部线程(如GC线程、终结线程等)是无法操作的,因此“全部”永远不可能实现

问候,


Loïc

答案很简单:无法从Java(从应用程序内部)使所有线程休眠

此外,在Java上,有许多内部线程(如GC线程、终结线程等)是无法操作的,因此“全部”永远不可能实现

问候,


Loïc

每个线程都必须将自己置于睡眠状态。也许这个问题会有所帮助:您是否尝试迭代所有正在运行的线程并逐个停止它们?@Abdul
thread.sleep()
是一种静态方法:您不能指定要睡眠的线程。为什么需要让所有线程睡眠?每个线程都必须让自己睡眠。也许这个问题会有帮助:您是否尝试迭代所有正在运行的线程并逐个停止它们?@Abdul
thread.sleep()
是一种静态方法:您不能指定要休眠的线程。为什么需要让所有线程都休眠?如果程序的线程正确同步,那么外部代理临时暂停一个或多个线程可能造成的最大危害就是使程序错过实时截止日期或无法运行eet是一个性能要求。它不会导致数据损坏。也就是说,如果程序正确同步。即使它没有正确同步,同时暂停所有线程的时间间隔也不会造成任何伤害。@jameslarge您的线程正在控制步进电机。因为它是睡眠时,它没有告诉它停止。它现在撞到了墙上,损坏了设备。这不是一个真实的例子吗?我用C语言解决了一个20K原型的问题(线程被睡眠是因为我有一个调试器)。仅仅因为它是同步的,它就不是一般安全的。@Gabetechan,这就是我说的那种事情,“错过了一个实时的最后期限”,但我猜重点是错的。实时软件本身就是一个完整的类别。我知道你在说什么,只是在我的情况下,是一个内墙受到了损坏(用一些干墙、泥和油漆修复)注:我对机械设计团队的官方建议是:“我们可以用更小的电机来实现这一点。"如果程序的线程已正确同步,则外部代理临时暂停一个或多个线程可能造成的最大危害是使程序错过实时截止日期或无法满足性能要求。这不会导致数据损坏。也就是说,如果程序已正确同步。即使它没有正确同步,然后同时暂停所有线程的时间间隔完全相同也不会造成任何伤害。@jameslarge您的线程正在控制一个步进电机。因为它处于休眠状态,所以它没有告诉它停止。它现在撞到墙上,损坏了设备。这不是一个真实的例子?我弄坏了一个20K pro在C中输入这个问题(线程被休眠是因为我有一个调试器在上面)。仅仅因为它是同步的,所以它通常是不安全的。@Gabeschen,这就是我说的“错过实时截止日期”的意思但我猜重点是错的。实时软件本身就是一个完整的类别。我知道你在说什么,只是在我的例子中,是一个内墙受到了损坏(用一些干墙、泥和油漆固定),原型没有损坏。P.S:我向机械设计团队的官方建议是,“我们可以用更小的电机来实现这一点。”