我正在学习如何使用 Python 中的 threading
和 multiprocessing
模块来并行运行某些操作并加快代码的速度。
我发现这很难(可能是因为我没有任何理论背景)去理解 threading.Thread()
对象和 multiprocessing.Process()
对象之间的区别。
另外,我不完全清楚如何实例化一个作业队列,并且只有4个(例如)作业并行运行,而另一个作业在执行之前等待资源释放。
我发现文档中的示例很清楚,但并不是非常详尽; 一旦我试图将事情复杂化一点,就会收到许多奇怪的错误(比如一个无法腌制的方法,等等)。
那么,我应该什么时候使用 threading
和 multiprocessing
模块呢?
您能给我提供一些资源,解释这两个模块背后的概念以及如何在复杂任务中正确使用它们吗?