不同平台上的多进程(Windows和Linux)
廖雪峰关于Python的多进程在不同平台上的实现:链接
- 要点:
- Linux通过Fork实现多进程,Windows通过multiprocessing实现多进程
- 由于Windows通过调用上述模块实现多进程,所以要通过if name == “main“:将其保护起来,否则将递归创建进程
在多进程中的Random函数
由于在Unix上每一个工作进程都继承了来自父进程的随机数产生器,因而在每一进程里会产生同一个随机数。
因而,在每个进程使用Random前,需要初始化随机数产生器 — 使用Random.seed()
What happens is that on Unix every worker process inherits the same state of the random number generator from the parent process. This is why they generate identical pseudo-random sequences.