多进程例子

多进程简单例子

from  multiprocessing import Lock,Value,Process
def mulTask(isFirst):
        #这里是处理任务的类
       a =A()
       a.doSomeThing()
if __name__ == '__main__':

    isFirstStart = Value('d',True) #通过共享状态来判断事件触发

    lock = Lock() #通过锁来访问共同资源
  
    ps = [Process(target=mulTask, args=(isFirstStart,)) for x in range(3)]
    for p in ps:
        p.start()
    for p in ps:
        p.join()

如果A类中用到mongodb数据库,client 每次A()的时候需要实例化一次
也就是说, A类的实例化对象必须持有一个独有的MongoClient() 对象.
(如果不这样做的话,mongodb会报错:mongodb在进程开始前被建立连接)

以上简单来说就是: 进程创建一次,MongoClient() 对象一个进程中持有一个. 共享数据访问,通过Lock来解决
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 1. Java基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语...
    子非鱼_t_阅读 31,803评论 18 399
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,099评论 19 139
  • 背景: 阅读新闻 12C CDB模式下RMAN备份与恢复 [日期:2016-11-29] 来源:Linux社区 作...
    阳屯okyepd阅读 3,641评论 0 7
  • 【知己、朋友和熟人】 有了高兴事,我找人分享。第一个人比我还高兴,第二个人流露出羡慕的神情,第三个人努力伪...
    北颖阅读 192评论 0 0
  • 文学到底是什么,这个问题,我从来没有去深思过,在我看来,它是一种阅读写作生活的融合,基于阅读的体验,产生生活观念,...
    麦那多多阅读 1,176评论 0 2