我有一个单独的线程来处理一些信息,并且如果在执行过程中发生错误,则需要让用户知道错误,所以现在我调用runOnUIThread()以创建一个Dialog并让用户知道。我的问题是什么时候会发生? runOnUIThread()中的指令是否在调用时立即发生,还是等待UI线程首先完成当前正在执行的操作?
我问是因为我将使用图形,并且为了定期更新屏幕,据我所知,UI线程将被循环占用以更新和重绘屏幕。
最佳答案
调用runOnUIThread()中的指令后是否立即执行
没有。
还是等待UI线程先完成当前正在执行的操作?
在某种程度上,甚至没有。主应用程序线程(又称UI线程)具有工作队列。 runOnUiThread()
将您的Runnable
发布到该队列。当Runnable
到达队列的开头时,它将运行。因此,Runnable
运行的时间取决于该队列的大小。
关于java - Android-runOnUIThread什么时候发生?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/29267424/