Python 通过Semaphore来限制多线程活动数量

Posted Jason_WangYing

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python 通过Semaphore来限制多线程活动数量相关的知识,希望对你有一定的参考价值。

python限制多线程的活动数量,避免同时运行多个线程。

import threading
import time

sem=threading.Semaphore(4)  #限制线程的最大数量为4个

def gothread():
    with  sem:  #锁定线程的最大数量
        for i in range(8):
            print(threading.current_thread().name,i)
            time.sleep(1)

for i in range(5):
    threading.Thread(target=gothread).start()

 

以上是关于Python 通过Semaphore来限制多线程活动数量的主要内容,如果未能解决你的问题,请参考以下文章

C# 多线程系列资源池限制

Java多线程同步工具类之Semaphore

python多线程编程—同步原语入门(锁Lock信号量(Bounded)Semaphore)

python多线程-Semaphore(信号对象)

python多线程同步机制Semaphore

CountDownLatchCyclicBarrierSemaphore多线程协助操作API