Unix/Linux操作系统提供了一个fork()
系统调用,它非常特殊。普通的函数调用,调用一次,返回一次,但是fork()
调用一次,返回两次,因为操作系统自动把当前进程(称为父进程)复制了一份(称为子进程),然后,分别在父进程和子进程内返回。
若在windows下运行:
pid = os.fork()
会提示:AttributeError: module 'os' has no attribute 'fork'
因为fork()适用在Unix和Linux,Windows下可用:'waitpid' 'pipe
multiprocessing模块就是跨平台版本的多进程模块