为不同的组件使用共享线程池是个好主意吗?



让我们有一些背景信息,如果你正在使用一些与网络连接,数据库操作等相关的库,你需要在另一个线程而不是主线程上运行它。

参考毕加索:

 public Builder executor(ExecutorService executorService)

我们可以看到他们已经为我们公开了executorService。

对于android开发者文档来说,最好在线程池中运行任务。

所以,避免创建这么多线程是我们最好的解决方案吗??我认为这很棒。我认为是时候停止使用所有的新线程(new Runnable(){}).start();

使用Executor。Android并发使用

(编辑)

我能提供的最好建议是,这取决于你需要控制正在执行的任务的粒度。考虑某些组件是否会比其他组件生成更多的任务——哪些组件可能是贪婪的。贪心的组件可能保证它们自己的线程池。对于ui任务,你已经有了AsyncTask线程池。

最新更新