美文网首页笔记本📒
python互斥锁的使用

python互斥锁的使用

作者: 涓涓自然卷 | 来源:发表于2021-01-18 14:01 被阅读0次

    知识要点

    1、互斥锁的创建:mutex = threading.Lock()
    2、上锁:mutex.acquire()
    3、释放锁:mutex.release()

    代码🌰

    import threading
    
    
    # 全局变量
    g_num = 0
    
    
    # 对g_num进行加操作
    def sum_num1():
        # 上锁
        mutex.acquire()
    
        for i in range(1000000):
            global g_num
            g_num += 1
    
        # 解锁
        mutex.release()
        print("g_num1:", g_num)
    
    
    # 对g_num进行加操作
    def sum_num2():
        # 上锁
        mutex.acquire()
    
        for i in range(1000000):
            global g_num
            g_num += 1
    
        # 解锁
        mutex.release()
    
        print("g_num2:", g_num)
    
    
    if __name__ == '__main__':
        # 创建锁
        mutex = threading.Lock()
        # 创建子进程
        sum1_thread = threading.Thread(target=sum_num1)
        sum2_thread = threading.Thread(target=sum_num2)
    
        # 启动线程
        sum1_thread.start()
        sum2_thread.start()
    
    

    运行结果

    可以正确运行出结果:


    image.png

    相关文章

      网友评论

        本文标题:python互斥锁的使用

        本文链接:https://www.haomeiwen.com/subject/vmqxzktx.html