gpt4 book ai didi

java - 使用停止的 Looper 清理线程

转载 作者:行者123 更新时间:2023-11-30 09:12:40 24 4
gpt4 key购买 nike

我正在使用附加到 Android HandlerThread 的 Looper执行长时间运行的异步任务:

HandlerThread handlerThread = new HandlerThread("handler-thread");
handlerThread.start()
Handler myHandler = new Handler(callbacks, handlerThread.getLooper());
// Ready to handle messages in callbacks

当我完成工作线程时,我调用 handlerThread.getLooper().quit() 来停止它的 Looper。 HandlerThread 实例是否在其 Looper 退出()后终止(退出,死亡),假设该线程没有执行其他执行?

最佳答案

Does the HandlerThread instance terminate (exit, die) after its Looper is quit(), assuming that that thread is performing no other execution?

Looper退出后,如果run()中没有其他处理要执行,则工作线程的run()方法返回。此时,handlerThread.isAlive() 返回 false 而 handlerThread.getState() 返回 TERMINATED .

请注意,多次启动线程是不合法的,如 Thread API doc 中所述.

关于java - 使用停止的 Looper 清理线程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21446976/

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