Java:没有易失变量的关机?

问题描述 投票:0回答:1

以下情况:

我有一个应用程序,它将运行数周,然后我希望正常关闭它。

以下代码可以解决问题:

Main-Thread:

boolean volatile active=true;

while(active)
{
    //loop-code (very fast)
}


//shutdown-thread, called once after a few weeks

active=false;

所以现在在每次循环迭代之后,我都会在主存储器中进行查找,这是导致读取不稳定的原因(对吗?!)。>

而且我不希望那样,仅在几周后才关机。

还有其他解决方案,我的主线程收到有关该关机的通知吗?

是否有任何直接进入主线程缓存的信号?这样它就不必每次都在主内存中查找自身,而是从extern收到通知?

或任何其他解决方案?

以下情况:我有一个应用程序,该应用程序运行了数周,然后我希望正常关闭它。下面的代码可以解决问题:主线程:布尔值volatile active = true; while(active)...

java concurrency signals volatile shutdown
1个回答
0
投票

这不是最佳解决方案,但是也许您已经有了更好的解决方案:

© www.soinside.com 2019 - 2024. All rights reserved.