Android多线程下载如何设置线程数

在Android中进行多线程下载一个文件时,线程数要根据什么来设置,是根据手机的cpu核心数来设置吗?

阅读 9.2k
5 个回答

不可能根据CPU核心数来设置啊。如果四核的CPU线程数量最多只能4个吗,绝对不止啊。
写的时候你可以自己设定一个线程最大并发数,Executors.newFixedThreadPool(num);

一般要看CPU是几核几线程的,手机的性能毕竟还是不能和电脑比,要根据手机自身的性能来设置。

跟CPU没有关系。这种多线程下载或者多线程IO之类的,瓶颈不在CPU,而是在IO异步回调的响应速度。这跟并发编译不一样。多开线程没什么关系,内存开销不会很多。

新手上路,请多包涵

据说设置线程数为cpu数量+1会好一点

不仅要看你的CPU核数,还要看你的操作中cpu计算部分和IO操作的部分各自占的比例,看看瓶颈在哪里
不嫌麻烦的话,可以使用systrace来观察一下具体的执行过程

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题