Python信号量

Posted Claire_xu

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python信号量相关的知识,希望对你有一定的参考价值。

 

信号量相当于一个锁锁着的房间里的多个床位,同一时间可以有多个线程获得信号量,而锁则只能被一个线程获得。

import threading
import time

semaphore = threading.Semaphore(3)

def func():
    if semaphore.acquire():   # acquire和release方法同锁的方法,不同在于可以控制多个线程得到该semaphore
        print (threading.currentThread().getName() +  get semaphore)
        time.sleep(1)
        semaphore.release()

for i in range(10):
  t1 = threading.Thread(target=func)
  t1.start()

 

以上是关于Python信号量的主要内容,如果未能解决你的问题,请参考以下文章