韩漫免费漫画在线观看方法,《好好疼爱里面》免费看,年轻漂亮的女士护士内衣,妈妈醉酒后把我当爸爸电视剧

文章 > Python基础教程 > python线程中的semaphore信号量是什么

python线程中的semaphore信号量是什么

头像

爱喝马黛茶的安东尼

2019-07-02 14:56:422848浏览 · 0收藏 · 0评论

python中的线程之semaphore信号量

semaphore是一个内置的计数器,每当调用acquire()时,内置计数器-1;每当调用release()时,内置计数器+1。

计数器不能小于0,当计数器为0时,acquire()将阻塞线程直到其他线程调用release()。

来看下面的代码:

import time
import threading
def foo():
    time.sleep(2)   #程序休息2秒
    print("ok",time.ctime())
for i in range(20):
    t1=threading.Thread(target=foo,args=()) #实例化一个线程
    t1.start()  #启动线程

执行结果:

ok Tue Jul 18 20:05:58 2017
ok Tue Jul 18 20:05:58 2017
ok Tue Jul 18 20:05:58 2017
ok Tue Jul 18 20:05:58 2017
ok Tue Jul 18 20:05:58 2017
ok Tue Jul 18 20:05:58 2017
ok Tue Jul 18 20:05:58 2017
ok Tue Jul 18 20:05:58 2017
ok Tue Jul 18 20:05:58 2017
ok Tue Jul 18 20:05:58 2017
ok Tue Jul 18 20:05:58 2017
ok Tue Jul 18 20:05:58 2017
ok Tue Jul 18 20:05:58 2017
ok Tue Jul 18 20:05:58 2017
ok Tue Jul 18 20:05:58 2017
ok Tue Jul 18 20:05:58 2017
ok Tue Jul 18 20:05:58 2017
ok Tue Jul 18 20:05:58 2017
ok Tue Jul 18 20:05:58 2017
ok Tue Jul 18 20:05:58 2017

可以看到,程序会在很短的时间内生成20个线程来打印一句话。

如果在主机执行IO密集型任务的时候再执行这种类型的程序时,计算机就有很大可能会宕机。

这时候就可以为这段程序添加一个计数器功能,来限制一个时间点内的线程数量。

相关推荐:《Python视频教程

代码如下:

import time
import threading
s1=threading.Semaphore(5)   #添加一个计数器
def foo():
    s1.acquire()    #计数器获得锁
    time.sleep(2)   #程序休眠2秒
    print("ok",time.ctime())
    s1.release()    #计数器释放锁
for i in range(20):
    t1=threading.Thread(target=foo,args=()) #创建线程
    t1.start()  #启动线程

执行结果:

ok Tue Jul 18 20:04:38 2017
ok Tue Jul 18 20:04:38 2017
ok Tue Jul 18 20:04:38 2017
ok Tue Jul 18 20:04:38 2017
ok Tue Jul 18 20:04:38 2017
ok Tue Jul 18 20:04:40 2017
ok Tue Jul 18 20:04:40 2017
ok Tue Jul 18 20:04:40 2017
ok Tue Jul 18 20:04:40 2017
ok Tue Jul 18 20:04:40 2017
ok Tue Jul 18 20:04:42 2017
ok Tue Jul 18 20:04:42 2017
ok Tue Jul 18 20:04:42 2017
ok Tue Jul 18 20:04:42 2017
ok Tue Jul 18 20:04:42 2017
ok Tue Jul 18 20:04:44 2017
ok Tue Jul 18 20:04:44 2017
ok Tue Jul 18 20:04:44 2017
ok Tue Jul 18 20:04:44 2017
ok Tue Jul 18 20:04:44 2017
关注

关注公众号,随时随地在线学习

本教程部分素材来源于网络,版权问题联系站长!

我在开会他在下添好爽在线视频 | 合家欢(1-46)王家| 粗大挺进亲女小雅小滨 | 《丰满的女邻居》播放| 动漫《纯洁的修女》在线看| 来真正的狗配人真人| 樱花视频在线观看免费高清电视剧| 《性88分钟》| 爸爸的大DJ小说| 妈妈がだけの心に漂う| CHINESE少妇偷| 小叔子从后面抱住我的电视剧| 小峡子的味道4| 美国《性船》无刚减| 《再来一次好吗》动漫| 国产在线观看免费全集电视剧网站| 黑色蕾丝女装大长腿| 欧美大片PPT免费PPT| 夹好我的精去上课别流出来了| 想见你台剧| 一枪战三母免费观看完整版| 夜童| 狗配女人宝典视频| 《交换:完美的邻居》3| 妈妈的朋友7| 55岁女人高潮后几天能恢复| 情满九道弯电视剧40集免费观看| 台剧《恋爱之瘾》林教授在线观看 | 女人尝试到更粗大的心理变化| 日大B舒服还是小B舒服呢| 小雨和公做爰22章| 国外成品网站1688入口在哪| 扌吴辶鬲的背景故事| 日本儿子娶母亲的电视剧| 录像狗配女人| 國产麻豆AVMDMD0179| 韩国神曲| 国产在线观看免费全集电视剧网站| 性做爰全过程免费看| 琪琪在线影院电视剧免费| 《美丽妻子替夫还债》剧情