考虑一些场景,可能需要在主线程做初始化动作,能否支持MessageQueue.IdleHandler?
HongdouHub opened this issue · 4 comments
HongdouHub commented
有些初始化需要保证在主线程初始化,可以再等主线程空闲下来的时候做初始化(启动优化),能否考虑支持接入一些类似MessageQueue.IdleHandler的方案?
YummyLau commented
@HongdouHub 目前正常在Looper排队即可,如果在IdleHandler处理反而可能遇到复杂的绘制场景导致依赖一直在等待,这个是不可控的。
HongdouHub commented
如果考虑复杂的绘制场景,在首页没有绘制完,理论上也不支持用户操作才对。
@HongdouHub 目前正常在Looper排队即可,如果在IdleHandler处理反而可能遇到复杂的绘制场景导致依赖一直在等待,这个是不可控的。
YummyLau commented
@HongdouHub 是不支持操作的。因为目前初始化动作不仅仅只是一个runnable,是一条链,多个消息穿插系统的Message排队处理。如果集中某个idel场景下初始化,后续runnable依然需要排队,如果合并在某个idel场景初始化,可能对后续系统的Message有一定干扰。 或者您有更好的建议或者pr也可以讨论下。
YummyLau commented
Idle可能会导致业务死锁。