【发布时间】:2011-02-07 07:00:43
【问题描述】:
在我的应用程序中,我有一个 UI 类,其名称是“SettingActivity”。
然后为了在后台做一些工作,我将这个 UI 类(SettingActivity)绑定到一个服务。 该Service中有两个预定义的方法(定义在.aidl文件中),一个是startTask(),另一个是stopTask()。
在 startTask() 中,我调用了一个 AsyncTask。但是当我检查这个 AsyncTask 的 Looper 的名字时。它是“主要的”。在我看来,AsyncTask 应该启动除主线程之外的另一个线程。
那么有人知道为什么会这样吗?
代码如下:
@Override
受保护的无效onPreExecute(){
super.onPreExecute();
Log.d(TAG, "onPreExecute "+Looper.myLooper().getThread().getName());
}
然后我将 main 作为输出。
【问题讨论】:
-
如果你能发布一些示例代码会很有帮助。
标签: android multithreading android-asynctask