文件名称:Python多线程编程
文件大小:492KB
文件格式:PDF
更新时间:2021-07-24 03:08:55
编程
Python多线程编程文档说明 多进程编程 一、 multiprocessing 模块 1. multiprocessing 模块提供了多进程编程的能力 它的API非常类似于 threading 模块,但是也提供了一些threading 模块不具有的能力 相比于线程,它通过派生子进程来绕过GIL 的限制,从而可以充分利用多核处理器的能力 它提供了进程间的同步 1.1 派生模式 1. multiprocessing 模块支持三种派生子进程的模式: spawn 模式:父进程重新开启一个全新的 python 解释器进程,然后子进程的代码运行在这个新的解释 器进程中 子进程只继承了必要的资源来完成任务。父进程打开的文件描述符和一些句柄不会被子进程继承。 该模式在三种模式中速度最慢 可以用于 Unix/Windows ,是Windows 上的默认方式 fork 模式:父进程使用os.fork() 来派生一个 python 解释器进程。子进程的代码运行在这个新的解 释器进程中 子进程几乎与父进程完全相同;子进程继承了父进程的所有资源 注意: fork 一个多线程的进程是有问题的 只可用于Unix ,是Unix 上的默认方式 forkserver 模式:在这种模式下,父进程派生了一个 server 进程。当任何时候,父进程需要创建子 进程时,由父进