我们什么时候需要在android应用程序中使用runOnUiThread?

Adh*_*ham 14 java multithreading android

我有一个使用此函数运行线程的代码示例runOnUiThread.我们为什么以及何时需要使用它?

编辑

如何使用AsyncTask类,什么是proscons

Lal*_*ani 20

runOnUiThread()当您想要从非UI线程更新UI时,必须使用.例如 - 如果要从后台线程更新UI.你也可以用Handler同样的东西.

来自文件 -

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

句法 -

       Activity_Name.this.runOnUiThread(new Runnable() {

            @Override
            public void run() {
                // your stuff to update the UI

            }
        });
Run Code Online (Sandbox Code Playgroud)

更新 -

AsyncTask -
Run Code Online (Sandbox Code Playgroud)

如果你想做一些Network operation或任何阻止你的UI的事情,那么AsyncTask是最好的选择.您可以使用其他几种方法来执行相同的后台操作Service,IntentService也可以执行后台操作.使用AsyncTask将帮助您完成UI工作,并且在您的后台操作进行之前也不会阻止您的UI.

来自文件 -

AsyncTask可以正确,方便地使用UI线程.此类允许执行后台操作并在UI线程上发布结果,而无需操作线程和/或处理程序.