python多进程共享变量

本文实例为大家分享了python多进程共享变量的相关代码,供大家参考,具体内容如下

from multiprocessing import Process, Managerimport osimport time  class MulFun():   def __init__(self):    self.a = [1,2,3,4,5]    self.b = 0    self.c = {}    self.s = "hello world"    self.radius = Manager().dict()    self.radius['a'] = self.a    self.radius['b'] = self.b    self.radius['c'] = self.c    self.radius['s'] = self.s    def func1(self):    self.b = self.radius['b']    for i in range(10):      self.b += i      self.radius['b'] = self.b      time.sleep(0.5)      print '1: ', self.radius['b'],':', self.radius['c'], os.getpid()    def func2(self):    self.c = self.radius['c']    for i in ['ab', 'bc', 'cd', 'df', 'fg']:      self.c[i] = i + i      self.radius['c'] = self.c      time.sleep(0.5)      print '2:  ', self.radius['b'],':', self.radius['c'], os.getpid()   def run(self):    process1 = Process(target=self.func1, args=())    process2 = Process(target=self.func2, args=())    process1.daemon = True    process2.daemon = True    process1.start()    process2.start()    process1.join()    process2.join()  class MulSun1:   def __init__(self, radius):    self.radius = radius    self.a = radius['a']    self.s = radius['s']   def process(self):     for i, j in enumerate(self.a):      #self.a[i] = j * 2      #self.radius['a'] = self.a      time.sleep(0.5)      print '1: ', self.radius['a'], ' & ', self.radius['s']  class MulSun2:   def __init__(self, radius):    self.radius = radius    self.a = radius['a']    self.s = radius['s']   def process(self):     for i in range(10):      self.s = self.s + ':% s' %i      if i 

以上就是本文的全部内容,希望对大家学习python程序设计有所帮助。

登录后复制

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。

发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/2536319.html

(0)
上一篇 2025年3月5日 23:18:57
下一篇 2025年3月5日 23:19:03

AD推荐 黄金广告位招租... 更多推荐

相关推荐

发表回复

登录后才能评论