本文摘自php中文网,作者不言,侵删。
本篇文章给大家带来的内容是关于Python实现多进程的详解(附示例),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。fork函数创建子进程
基本使用
Linux 操作系统提供了一个 fork函数用来创建子进程。fork()位于Python的os模块中。
使用导入os模块即可。
1 2 |
|
每次调用fork()函数后,相应的父进程都会生成一个子进程。
例如下面这段代码:
1 2 3 4 |
|
执行之后将会生成8个进程。
fork()函数的返回值
fork()函数对于子进程的返回值永远是0,而对父进程的返回值则为子进程的pid(进程号)。
实例
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
|
执行结果:
进程模块
导入模块
Python也提供了multiprocessing库给全平台提供了多线程编程。
1 |
|
简单进程
下面代码为一个简单进程:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
|
这里从multiprocessing库引入Process这个类。
p1 = Process(target = work, args = (num,))是创建一个进程。target为所要执行任务的函数,args则为接收的参数,必须以元组形式给与。
start()是让进程开始运行。
同时进程有一些方法:
join方法
Process的join方法与多线程类似。为等待进程运行结束。
使用方法:join(timeout)。
使用join(),程序会等待进程结束后再继续进行下面的代码。
如果加入了timeout参数,则程序会等待timeout秒后继续执行下面的程序。
close方法
close()用于关闭进程,但是不能关闭正在运行中的子进程。
进程类
相关阅读 >>
更多相关阅读请进入《Python》频道 >>

Python编程 从入门到实践 第2版
python入门书籍,非常畅销,超高好评,python官方公认好书。