多线程和多处理线程池之间的区别?

时间:2016-08-27 01:03:35

标签: python multithreading python-2.7 python-3.x python-multithreading

我在文件A中有20个项目的列表,这些项目被传递到文件B进行处理并返回结果。

目前我正在进行多线程处理。并且涉及到线程池和多处理的概念,并且想知道多线程和线程池之间的区别是什么?我的程序是否会受益于线程或线程池?

由于

1 个答案:

答案 0 :(得分:1)

  

多线程和线程池之间的区别

多线程是CPU同时执行多个进程/线程的能力。有关详细信息,请参阅multithreading。 线程池是一组预先创建的线程,您可以反复使用它们来执行任务。有关详细信息,请参阅What is a thread pool?

  

我的程序会从线程或线程池中受益吗?

根据您的描述,您只有2个文件,A和B,并且您只需处理20个项目。很可能线程池和线程池不会带来任何好处。如果处理非常密集或cpu密集,您可能会受益于线程,但您必须解释正在进行的处理以回答该问题。至于线程池,你不会受益任何一种方式。使用线程池是因为创建线程非常昂贵。它们消除了多次创建/销毁线程的麻烦。但是,您的程序只有两个文件,因此没有任何好处。