如何检查当前线程是否不是主线程

新手上路,请多包涵

我需要检查运行某段代码的线程是否是主(UI)线程。我怎样才能做到这一点?

原文由 Charlie-Blake 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 1.2k
2 个回答
Looper.myLooper() == Looper.getMainLooper()

如果返回 true,那么你就在 UI 线程上!

原文由 Carnal 发布,翻译遵循 CC BY-SA 3.0 许可协议

您可以使用下面的代码来了解当前线程是否是 UI/主线程

if(Looper.myLooper() == Looper.getMainLooper()) {
   // Current Thread is Main Thread.
}

或者你也可以使用这个

if(Looper.getMainLooper().getThread() == Thread.currentThread()) {
   // Current Thread is Main Thread.
}

这是类似的问题

原文由 AAnkit 发布,翻译遵循 CC BY-SA 3.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题