相关疑难解决方法(0)

在进程之间共享具有文件句柄属性的对象

我有一个关于共享资源与进程之间的文件句柄的问题.这是我的测试代码:

from multiprocessing import Process,Lock,freeze_support,Queue
import tempfile
#from cStringIO import StringIO

class File():
    def __init__(self):
        self.temp = tempfile.TemporaryFile()
        #print self.temp

    def read(self):
        print "reading!!!"
        s = "huanghao is a good boy !!"
        print >> self.temp,s
        self.temp.seek(0,0)

        f_content = self.temp.read()
        print f_content

class MyProcess(Process):
    def __init__(self,queue,*args,**kwargs):
        Process.__init__(self,*args,**kwargs)
        self.queue = queue

    def run(self):
        print "ready to get the file object"
        self.queue.get().read()
        print "file object got"
        file.read()

if __name__ == "__main__":
    freeze_support()
    queue = Queue()
    file = File()

    queue.put(file)
    print "file just put" …
Run Code Online (Sandbox Code Playgroud)

python multiprocessing

5
推荐指数
1
解决办法
4241
查看次数

标签 统计

multiprocessing ×1

python ×1