gpt4 book ai didi

java - 控制Android Java线程

转载 作者:行者123 更新时间:2023-12-01 11:10:16 25 4
gpt4 key购买 nike

在我的 Android 应用程序中,有一个包含可运行内部类的 Activity 。从此 Activity 中创建/启动运行内部类的新线程。该线程执行此循环:

while (run) {
...
}

boolean 值“run”的状态应该从两个线程中更改。这就是为什么我将它放入 Activity 类中,如下所示:

private static volatile boolean run;

我想知道这是否是控制线程的正确方法。两个线程是否在内存中使用相同的变量?由于检查或设置 boolean 值都不是 cpu 的原子操作,是否有可能一个线程在另一个线程更改其状态时检查“运行”?

最佳答案

如果您放置在内部 Runnable 类中的任务完成,线程将自行停止。因此,保持 Runnable 处于 Activity 状态将使线程也处于 Activity 状态,即使用 while 循环。并且volatile boolean可以轻松控制run变量的变化。

关于java - 控制Android Java线程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32462489/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com