如何为Android应用程序创建线程管理器?

时间:2010-03-30 13:51:33

标签: java android multithreading

我想知道如何为我的Android应用程序启动和编写线程管理器。 我的应用程序将填充一个带有网络I / O的列表,我必须为此管理线程。

我之前从未这样做过,我不知道从哪里开始。我听说过线程池和其他东西,但我很困惑。有人可以帮我解决这个问题吗?

由于

2 个答案:

答案 0 :(得分:4)

AsyncTask已经有一个线程池 - 只需使用它。

答案 1 :(得分:0)

图书馆里有一些管理人员(我相信其他人会推荐),但与我一样,从长远来看,你可能会发现建立一个满足你的确切需求的更好。

它可以非常简单,并且可以是Java的通用而不仅仅是Android。它可能只是Runnables的ArrayList。一种方法将一个runnable添加到ArrayList的后面。第一次调用此方法时,将初始化并运行新的Thread。这个Thread只是从ArrayList的前面重复删除一个Runnable,然后执行它。当ArrayList为空时,线程退出。

您需要注意保持对ArrayList线程的访问安全,但实际上可以这么简单。

如果您需要添加优先级或取消队列中或正在进行的任务,事情会变得复杂一些。