搜索

首页  >  问答  >  正文

Python中multiprocessing与concurrent相比为什么差距这么大?

好吧,我弄错了,concurrent与multiprocessing与只有在处理IO型任务的时候才有优势,计算型任务没有什么不同。

高洛峰高洛峰2777 天前807

全部回复(2)我来回复

  • 伊谢尔伦

    伊谢尔伦2017-04-18 10:12:22

    确认代码没有弄错吗,怎么感觉multiprocess的那里计算了两次......

    回复
    0
  • PHP中文网

    PHP中文网2017-04-18 10:12:22

    多进程是在多个进程中,一个进程的阻塞并不会影响到其他进程。比如在一个进程中进行大量的计算操作,并不会对其他进程产生较大影响。

    协程就是在一个线程中,如果协程中一个任务发生阻塞,其余任务也将受到影响。比如说在一个任务中,进行大量的计算操作,那么这个任务将会阻塞其余的任务。

    所以协程不适合处理计算密集型的任务,而适合处理IO密集型的任务,因为携程配合异步IO,就可以在不阻塞进程情况下,又能获得同步编程的快感。

    回复
    0
  • 取消回复