在onCreate()中创建的RunOnUiThread,什么时候运行

Eri*_*rik 2 lifecycle android android-activity

刚刚出现了一些奇怪的行为,需要询问。我的想法是这runOnUiThread会追上onResume()

  @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
            // do stuff..
            // do stuff..
            ...runOnUiThread(new Runnable() {
                @Override
                public void run() {
                    //Drink lemonade
                }
            });
        }
            // do stuff..
            // do stuff..
    }


    @Override
    protected void onStart() {
        super.onStart();
            // do stuff..
    }

    @Override
    protected void onResume() {
        super.onResume();
            // do stuff..
    }
Run Code Online (Sandbox Code Playgroud)

Emm*_*uel 5

文档

在 UI 线程上运行指定的操作。如果当前线程是 UI 线程,则立即执行操作。如果当前线程不是 UI 线程,则将操作发布到 UI 线程的事件队列中。

我认为你不应该runOnUiThread()从 UI调用,Thread因为你已经在 UI 上了Thread