除了Lock,还包括RLock、Condition、Semaphore和Event等进程间的同步原语。其用法也与线程间的同步原语很类似。API使用可以参考文末中引用的文档链接。
在工程中实现进程间的数据共享应当优先使用队列或管道。
本文对multiprocessing模块中常见的API作了简单的介绍。讲述了Process和Pool的常见用法,同时介绍了进程间的数据方式:队列和管道。最后简单了解了进程间的同步原语。
通过与上篇的对比学习,本文的内容应该是更加容易掌握的。
https://python-parallel-programmning-cookbook.readthedocs.io
https://docs.python.org/3/library/threading.html
https://docs.python.org/3.7/library/multiprocessing.html