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

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

阅读 3.8k
2 个回答

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

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

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

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

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