【问题标题】:Android UI Thread安卓用户界面线程
【发布时间】:2012-01-27 05:58:13
【问题描述】:

我正在使用线程来完成一些任务。之后我想通过 runOnUiThread() 访问主线程。但是如何判断那个ui线程是否还在运行呢?

【问题讨论】:

  • 你是说如果它在睡觉? ui 线程是应用程序启动的主线程。
  • 不,我需要知道该活动是否仍在运行
  • 我想如果你通过runOnUIThread访问,它会随时工作。

标签: java android


【解决方案1】:

Two options 是否有一个使用静态布尔变量来查看活动是否正在运行,或者您可以检查所有正在运行的任务并确定您的活动是否正在运行。

【讨论】:

  • 你如何使用第二种方法,即获取正在运行的任务并检查活动是否正在运行?
【解决方案2】:

您的 UI 线程未运行的唯一实例是您的主线程已生成一个需要与 UI 线程通信的线程,并且在上下文的生命周期结束时非 UI 线程尚未被终止。

您必须通过interrupt()onStop()onDestory() 中的线程来避免这种情况。

处理完这件事后,您始终可以放心地假定调用runOnUiThread() 是合适的。

【讨论】:

  • 感谢您的意见。由于我在线程内执行的任务的性质,我需要安全地完成它,而不是在中间中断。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-12-13
  • 2020-11-17
相关资源
最近更新 更多