多线程真的比单线程执行效率高吗

更新时间:02-09 教程 由 枝桠 分享

多线程真的比单线程执行效率高吗?

看场景;

效率的瓶颈不在代码的时候,比如用的最多的io操作,

下载器,下载服务器每个接口就给你500k的速度,那多线程相当于500*n,本地网络最大2m每秒,可以开3~5个线程自然快;

复制器,windows操作系统复制文件很慢,因为负责复制的api防止系统卡死每个线程就给你那点速度,如果用java写个多线程io流复制,速度快8倍左右;

这样的场合有个特点,速度或者说效率的关键不是java的处理能力,而是接口限制成了瓶颈;

举个反例,如果对一个集合进行遍历,打印value,使用多线程明显比单线程效率低;因为时间过多的消耗在了创建线程,销毁线程上,执行的有用代码和单线程没区别,效率不如单线程;

声明:关于《多线程真的比单线程执行效率高吗》以上内容仅供参考,若您的权利被侵害,请联系13825271@qq.com
本文网址:http://www.25820.com/tutorial/14_2194957.html