使用 Python 实现多进程
2010-09-22 11:23:22 来源:WEB开发网如果查看输出,将会看到下面的内容:
mac% python simple.py
in parent process (id 5245)
in parent process after child process start
parent process about to join child process
starting child process with id: 5246
parent process: 5245
sleeping for 5
Done sleeping
in parent process after child process join
parent process exiting with id 5245
The parent's parent process: 5231
可以看到从主进程分出了一个子进程,该子进程随后休眠了 5 秒种。子进程分配是在调用 p.start() 时发生的。在下一节中,您将看到这个基础的程序将扩展为更大的程序。
构建异步 Net-SNMP 引擎
到目前为止,您尚未构建任何特别有用的内容。下一个示例将解决一个实际问题,为 Net-SNMP 异步生成 Python 绑定。默认情况下,Net-SNMP 将阻塞每一个 Python 调用。使用多进程库可以非常简单地将 Net-SNMP 库转换为完全异步的操作。
在开始之前,需要检查是否安装了一些必备的内容,以便使用 Python 2.6 多进程库和 Net-SNMP 绑定:
下载 Python 2.6 并针对所使用的操作系统进行编译:Python 2.6 下载
调整 shell 路径,这样在输入 python 时就会启动 Python 2.6。例如,如果将 Python 编译到 /usr/local/bin/,您就需要预先处理 $PATH 变量,从而确保它位于一个较旧的 Python 版本之前。
下载并安装设置工具:设置工具
下载 Net-SNMP,除了使用其他操作系统所需的标记(参见相应的 README 文件)外,另外使用一个 “--with-python-modules” 标记进行配置。 ./configure --with-python-modules
更多精彩
赞助商链接