Android 检测并强制某些类型的操作仅在界面线程中发生,其机制是什么?



Android 检测并强制某些类型的操作仅在 UI 线程中发生的机制具体是什么?

框架中是否只有很多地方检查当前线程?

我想有一些更核心的方法来完成它,我想知道它在哪里,它是什么。

这个问题只是为了知识。 我没有要解决的具体问题。

从我的发现来看 - 是的,它或多或少是通过Blockguard以中心方式制作的。它是一种机制,让线程对允许在其线程中执行的操作设置代码的限制。

它在 IO、网络访问等低级别操作中调用,具体取决于当前线程策略。例如,您可以在此处找到其用法。

在严格模式描述中也有一些有用的信息可以朝这个方向挖掘。

长任务、后台任务、使用网络等必须在 UI 线程上运行,有关更多信息,请阅读此链接

最新更新