我Activity
通过调用生成2个相同Class
AsyncTask
:Android:为什么不同的AsyncTask有不同的TID?
new SomeTask().execute();
new SomeTask().execute();
当调试 - 调用从doInBackground
android.os.Process.myTid()
我得到他们中的每一个不同的TID
。这意味着每个AsyncTask
正在执行不同的Thread
。
但似乎有悖于docs说法:
与蜂窝开始,任务小号在单个线程执行...
这到底是怎么解释呢?
目标API:23
运行于:22
敏API:15
编译:23
感谢,
但该文档说,除非你在执行运行,你有2个线程:1的UI和1为“普通工人”为所有其他的AsyncTask的等等'Process'这里没有相关的(这是每个应用程序及其1个过程ui线程,因为它是基于linux和线程=进程) – michael
@michael:啊,现在我明白你的担心了。你在运行什么版本的Android?你的'targetSdkVersion'是什么? “过程在这里不相关” - 除了你是谁提出来的(“我得到不同的PID”)。进程ID(PID)和线程ID(TID)是不同的东西,你的问题似乎混合并匹配它们。 – CommonsWare
对不起,我的意思TID ... – michael