Handler发送消息的Delay 可靠吗?

  • 大于Handler Looper的周期时基本可靠(例如主线程>50ms)
  • Looper 负载越高,任务越容易积压,进而导致卡顿
  • 不要用Handler的delay做计时使用

使用独享的Looper

   		val handlerThread=HandlerThread("test_thread")
   		handlerThread.start()
        val handler=Handler(handlerThread.looper)

HandlerThread
方便启动具有Looper的新线程。Looper可以在创建handler时使用


	//HandlerThread 的run方法
    @Override
    public void run() {
        mTid = Process.myTid();
        Looper.prepare();
        synchronized (this) {
            mLooper = Looper.myLooper();
            notifyAll();
        }
        Process.setThreadPriority(mPriority);
        onLooperPrepared();
        Looper.loop();
        mTid = -1;
    }
上一篇:Handler实现机制,同步屏障,IdleHandler


下一篇:JVM jclasslib使用