Python教程

python 多进程中锁的使用方法

本文主要是介绍python 多进程中锁的使用方法,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

一、不加锁

from multiprocessing import Process,Lock
import time


def get():
    for i in range(3):
        time.sleep(1)
        print(i)


def task(lock):
    # lock.acquire()   #获取锁
    get()
    # lock.release()   #释放锁


if __name__ == '__main__':
    lock=Lock()
    for i in range(5): #并发5个
        p=Process(target=task,args=(lock,))
        p.start()


在这里插入图片描述

二、加锁

from multiprocessing import Process,Lock
import time


def get():
    for i in range(3):
        time.sleep(1)
        print(i)


def task(lock):
    lock.acquire()   #获取锁
    get()
    lock.release()   #释放锁


if __name__ == '__main__':
    lock=Lock()
    for i in range(5): #并发5个
        p=Process(target=task,args=(lock,))
        p.start()


在这里插入图片描述

这篇关于python 多进程中锁的使用方法的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!