zoukankan      html  css  js  c++  java
  • python全局变量

    import multiprocessing
    from multiprocessing.managers import BaseManager
    import threading
    
    # 锁可以通过global也可以在Process中传无所谓
    share_lock = threading.Lock()
    
    # 定义一个要共享实例化对象的类
    class Test():
        def __init__(self):
            self.test_list = ["start flag"]
    
        def test_function(self,arg):
            self.test_list.append(arg)
    
        def print_test_list(self):
            for item in self.test_list:
                print(f"{item}")
    
    def sub_process(process_name,obj):
        global share_lock
        share_lock.acquire()
        obj.test_function(f"{process_name}")
        share_lock.release()
        obj.print_test_list()
        pass
    
    def main_process():
        # 如果是想注册open方法这样操作
        # manager = BaseManager()
        # # 一定要在start前注册,不然就注册无效
        # manager.register('open', open)
        # manager.start()
        # obj = manager.open("1.txt","a")
    
        # 为了更加直接我们直接以一个Test类的实例化对象来演示
        manager = BaseManager()
        # 一定要在start前注册,不然就注册无效
        manager.register('Test', Test)
        manager.start()
        obj = manager.Test()
    
        process_list = []
        # 创建进程1
        process_name = "process 1"
        tmp_process = multiprocessing.Process(target=sub_process,args=(process_name,obj))
        process_list.append(tmp_process)
        # 创建进程2
        process_name = "process 2"
        tmp_process = multiprocessing.Process(target=sub_process, args=(process_name,obj))
        process_list.append(tmp_process)
        # 启动所有进程
        for process in process_list:
            process.start()
        for process in process_list:
            process.join()
    
    
    if __name__ == "__main__":
        main_process()
  • 相关阅读:
    014_v2 python基础语法_dict
    6-05使用SQL语句删除数据
    6-04使用SQL语句更新数据
    6-03使用SQL语句一次型向表中插入多行数据
    6-02使用SQL语句向表中插入数据
    6-01T-SQL中的运算符
    5-08删除表
    5-07删除约束
    使用SQL语句向已有数据表添加约束
    5-06使用Sql 语句为表添加约束
  • 原文地址:https://www.cnblogs.com/codeDevotee/p/12902921.html
Copyright © 2011-2022 走看看