您的位置:首页 > 编程语言 > Python开发

multiprocessing在python中的高级应用-进程

2015-08-30 09:52 501 查看
本篇主要讲解multiprocessing中的重要模块-进程

Process([group [,target [,name [,args [,kwargs]]]]])

这个类表示运行在一个子进程中的任务,应该使用关键字参数来指定构造函数中的参数。target是当前进程启动时执行的可调用对象,args是传递给target的位置参数的元组,而kwargs是传递给target的关键字参数的字典。如果省略args和kwargs参数,将不带参数调用target。name是为进程指定描述性名称额字符串。group参数未使用,值始终未None。这个构造函数简单的构造了一个Process进程,这与threading模块中创建线程的过程相似。

Process的实例p具有以下方法:

p.is_alive( )

如果p仍然运行,返回Trure。

p.join([timeout])

等待进程p终止,timeout是可选的超时期限。进程可以被连接无数次,但如果连接自身则会出错。

p.run( )

进程启动时运行的方法。 默认情况下,会调用传递给Process构造函数的target。定义进程的另一种方法是从Process类继承并衷心实现run()函数。

p.start()

启动进程。这将运行代表进程的子进程,并调用该子进程中的p.run()函数。

p.terminate()

强制终止进程。如果调用此函数,进程p将被立即终止,同时不会进行任何清理动作。如果进程p创建了他自己的子进程,这些进程将变为僵死进程。使用此方法是需特别小心。如果p保存了一个锁定或通过进程间通信被调用,那么终止它可能会导致死锁或I/O崩溃。

Process实例p也具一下数据属性。

p.authkey

进程的身份验证键。除非显示设定,这是由os.urandom()函数生成的32字符地字符串。这个键的用途是为涉及网络连接的底层进程间通信提供安全性。这类连接只有在两端具有相同的身份验证键时才能成功。

p.daemon

一个Boolean标志,指示进程是否是后台进程。当创建它的python进程终止时,后台进程将自动终止。另外,禁止后台进程创建自己的新进程。p.daemon的值必须在使用p.start()函数启动进程之前设置。

p.exitcode

进程的证书退出代码。如果进程仍然在运行,它的值为None。如果值为负数,-N表示进程由信号N所终止。

p.name

进程的名称

p.pid

进程的整数进程ID。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: