手机
当前位置:查字典教程网 >脚本专栏 >python >python实现在每个独立进程中运行一个函数的方法
python实现在每个独立进程中运行一个函数的方法
摘要:本文实例讲述了python实现在每个独立进程中运行一个函数的方法。分享给大家供大家参考。具体分析如下:这个简单的函数可以同于在单独的进程中运...

本文实例讲述了python实现在每个独立进程中运行一个函数的方法。分享给大家供大家参考。具体分析如下:

这个简单的函数可以同于在单独的进程中运行另外一个函数,这对于释放内存资源非常有用

#!/usr/bin/env python from __future__ import with_statement import os, cPickle def run_in_separate_process(func, *args, **kwds): pread, pwrite = os.pipe() pid = os.fork() if pid > 0: os.close(pwrite) with os.fdopen(pread, 'rb') as f: status, result = cPickle.load(f) os.waitpid(pid, 0) if status == 0: return result else: raise result else: os.close(pread) try: result = func(*args, **kwds) status = 0 except Exception, exc: result = exc status = 1 with os.fdopen(pwrite, 'wb') as f: try: cPickle.dump((status,result), f, cPickle.HIGHEST_PROTOCOL) except cPickle.PicklingError, exc: cPickle.dump((2,exc), f, cPickle.HIGHEST_PROTOCOL) os._exit(0) #an example of use def treble(x): return 3 * x def main(): #calling directly print treble(4) #calling in separate process print run_in_separate_process(treble, 4)

希望本文所述对大家的Python程序设计有所帮助。

【python实现在每个独立进程中运行一个函数的方法】相关文章:

python实现定制交互式命令行的方法

python基础教程之lambda表达式使用方法

python实现进程间通信简单实例

Python中针对函数处理的特殊方法

python实现网页链接提取的方法分享

python实现代码行数统计示例分享

python 实现插入排序算法

python中使用sys模板和logging模块获取行号和函数名的方法

python实现问号表达式(?)的方法

python 测试实现方法

精品推荐
分类导航