znl_12 2013-02-21 08:46 采纳率: 0%
浏览 2083
已采纳

在哪个线程中运行 AsyncTask?

应用程序的 AlertDialog.Builder(context) 中有下面的代码。问题是在哪个线程中运行呢?

final Thread myPrettyOperation = new Thread() {
    @Override
    public void run() {
        //Do some really long operation.
    }
};
class MyPrettyTask extends
        AsyncTask<Void, Integer, Boolean> {
    protected Boolean doInBackground(
            Void... voids) {
        myPrettyOperation.start();
        return true;
    }
    protected void onProgressUpdate(
            Integer... progress) {
    }
    protected void onPostExecute(Boolean result) {
    }
}
new MyPrettyTask().execute();
  • 写回答

2条回答 默认 最新

  • nana4ever 2013-02-21 09:51
    关注

    运行应用程序,然后检查 logcat 输出。线程名分别是 "Thread1:", "Thread2:", "Thread3:",当你在输出中看见 "main" ,就是指你的 UI 线程。在其它情况下,你会看见线程的名字,例如: 是 myPrettyOperation 里是"Thread14"。

     final Thread myPrettyOperation = new Thread() {
        @Override
        public void run() {
            Log.i("YOUR_TAG", "Thread1: "+ Thread.currentThread().getName()); 
            //Do some really long operation.
        }
    };
    class MyPrettyTask extends
            AsyncTask<Void, Integer, Boolean> {
        protected Boolean doInBackground(
                Void... voids) {
            Log.i("YOUR_TAG", "Thread2: "+ Thread.currentThread().getName()); 
            myPrettyOperation.start();
            return true;
        }
        protected void onProgressUpdate(
                Integer... progress) {
        }
        protected void onPostExecute(Boolean result) {
        }
    }
    new MyPrettyTask().execute();
    Log.i("YOUR_TAG", "Thread3: "+ Thread.currentThread().getName()); 
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥60 版本过低apk如何修改可以兼容新的安卓系统
  • ¥25 由IPR导致的DRIVER_POWER_STATE_FAILURE蓝屏
  • ¥50 有数据,怎么建立模型求影响全要素生产率的因素
  • ¥50 有数据,怎么用matlab求全要素生产率
  • ¥15 TI的insta-spin例程
  • ¥15 完成下列问题完成下列问题
  • ¥15 C#算法问题, 不知道怎么处理这个数据的转换
  • ¥15 YoloV5 第三方库的版本对照问题
  • ¥15 请完成下列相关问题!
  • ¥15 drone 推送镜像时候 purge: true 推送完毕后没有删除对应的镜像,手动拷贝到服务器执行结果正确在样才能让指令自动执行成功删除对应镜像,如何解决?