View.post
当对应的Widget View 没有attach到window的时候,对应的Runnable会被提交到 ViewRootImpl#RunQueue ,如果已经attach的话,会提交给UI Thread 对应的Handler的MessageQueue里面
而对应的 RunQueue 文档描述:
The run queue is used to enqueue pending work from Views when no Handler is attached. The work is executed during the next call to performTraversals on the thread.
问题场景:
当我使用 View.postDelay 提交一个Runnable的时候,在Runnable中递归的使用 VIew 提交 this@Runnable的延时任务,当页面不可见的时候,对应的任务就不会被执行