python实现在每个独立进程中运行一个函数的方法
本文实例讲述了python实现在每个独立进程中运行一个函数的方法。分享给大家供大家参考。具体分析如下:
这个简单的函数可以同于在单独的进程中运行另外一个函数,这对于释放内存资源非常有用
#!/usr/bin/envpython from__future__importwith_statement importos,cPickle defrun_in_separate_process(func,*args,**kwds): pread,pwrite=os.pipe() pid=os.fork() ifpid>0: os.close(pwrite) withos.fdopen(pread,'rb')asf: status,result=cPickle.load(f) os.waitpid(pid,0) ifstatus==0: returnresult else: raiseresult else: os.close(pread) try: result=func(*args,**kwds) status=0 exceptException,exc: result=exc status=1 withos.fdopen(pwrite,'wb')asf: try: cPickle.dump((status,result),f,cPickle.HIGHEST_PROTOCOL) exceptcPickle.PicklingError,exc: cPickle.dump((2,exc),f,cPickle.HIGHEST_PROTOCOL) os._exit(0) #anexampleofuse deftreble(x): return3*x defmain(): #callingdirectly printtreble(4) #callinginseparateprocess printrun_in_separate_process(treble,4)
希望本文所述对大家的Python程序设计有所帮助。
热门推荐
10 儿子立冬祝福语简短独特
11 对当兵的祝福语简短
12 侄儿高考试祝福语简短
13 伴郎红包祝福语朋友简短
14 媳妇生日简短祝福语朋友
15 公司年会祝福语简短最好
16 元旦感恩祝福语简短大全
17 红包祝福语简短10字
18 周六早晨祝福语简短