【发布时间】:2012-07-17 11:40:23
【问题描述】:
谁能说说Thread和AsynTask的区别~ 我不得不这样的事情:
class A{
int nTmp;
ClassB BTmp = new ClassB();
ClassC CTmp = new ClassC();
//I want to put the next two lines into a separate thread, because they will consume so much time
//and I want to display a ProgressDialog when do this two lines
Method1(nTmp, BTmp);
CTmp = Method2();
if(Method2(CTmp)){
return true;
}
return false;
}
这是我的问题:
- 如果我使用新线程,我无法将属于 A 类的 [nTmp] 和 [BTmp] 传递给单独的线程。
- 因为我想使用这两行的结果,所以当它必须显示进度对话框时,我必须在 UI 线程中等待 result[CTmp]。
- 我试过AsynTask,但还是有问题2。
我发现我的重点是如何通过显示进度对话框等待其他线程的结果。有没有一个类可以做到这一点?
【问题讨论】:
-
这是一个链接,它向您说明了明显的区别(个人认为是我见过的最好的)。 vogella.com/articles/AndroidPerformance/article.html
-
我已经查看了那篇文章。但是没有介绍如何等待另一个线程。