有必要用多线程执行同一个任务吗? 如果有,有什么好处?
1个回答
展开全部
对于“生产”,“消费”模式的比较推荐使用多线程来执行。
另外,可以并发的也可以考虑多线程来执行。
比如说可以并行的生成100000000个随机数,各随机数之间没有任何关联,那就可以起十个线程来做,执行的效率肯定会高,使用的处理时间就会短。只是个比方。
另外,可以并发的也可以考虑多线程来执行。
比如说可以并行的生成100000000个随机数,各随机数之间没有任何关联,那就可以起十个线程来做,执行的效率肯定会高,使用的处理时间就会短。只是个比方。
更多追问追答
追问
如果电脑只有两个cpu,为什么要启动10个线程来产生随机数,这10个线程不是也只有两个线程可以同时运行吗,还要进行时间片的切换,不是更话费时间吗?
追答
嗯,当然。是结合你的机器实际情况来做的。
但是cpu的处理时间是非常快的,其实有许多任务都是存在CPU等IO的状态。这个时候用多线程就可以有效的利用CPU的分时特性,最大的挖掘CPU的运算能力。
如果说一个CPU只能运行一个线程的话,那WINDOWS多任务在单核时代是不可能实现的。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询