我最近在打开 FragmentActivity 的过程中运行了一个方法跟踪 session ,该 session 从上一个 Activity 打开大约需要 750-1000 毫秒,并且有一个 ListView,它将其初始一批数据加载到其中,时间从低(“低”)为 1500 毫秒到高达 5000 毫秒。按“独占时间”排序后,发现有一个名为android.os.MessageQueue.next
的方法占用了多个时间。
方法跟踪 session 后所有主线程的 View 。注意 android.os.MessageQueue.next
在列表中是第一位的:
现在,我的问题是这样的:这是Android应用程序中的标准操作过程吗?也就是说,android.os.MessageQueue.next
是否指的是等待另一个操作的主队列?或者,这是否表明某种暂时的僵局?
我应该担心吗?
最佳答案
如果您正在使用处理程序线程,希望出现问题。我可以在 MessageQueue 的 next 方法的源代码中看到这些行。看看它可能有助于你理解。
** 消息 next() {//如果消息循环已经退出并被释放,则返回此处。//如果应用程序在退出后尝试重新启动循环器,则可能会发生这种情况//这是不受支持的。 **
关于android.os.MessageQueue.next 占用了多个独占时间——这是正常的行为吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28304100/