python多线程threading.Lock锁用法实例


Posted in Python onNovember 01, 2014

本文实例讲述了python多线程threading.Lock锁的用法实例,分享给大家供大家参考。具体分析如下:

python的锁可以独立提取出来

mutex = threading.Lock()

#锁的使用

#创建锁

mutex = threading.Lock()

#锁定

mutex.acquire([timeout])

#释放

mutex.release()

锁定方法acquire可以有一个超时时间的可选参数timeout。如果设定了timeout,则在超时后通过返回值可以判断是否得到了锁,从而可以进行一些其他的处理。
#!/usr/bin/env python

#coding=utf-8

import threading

import time

 

class MyThread(threading.Thread):

    def run(self):

        global num 

        time.sleep(1)

 

        if mutex.acquire(1):  

            num = num+1

            msg = self.name+' set num to '+str(num)

            print msg

            mutex.release()

num = 0

mutex = threading.Lock()

def test():

    for i in range(5):

        t = MyThread()

        t.start()

if __name__ == '__main__':

    test()

Thread-1 set num to 1

Thread-3 set num to 2

Thread-4 set num to 3

Thread-5 set num to 4

Thread-2 set num to 5

希望本文所述对大家的Python程序设计有所帮助。

Python 相关文章推荐
python实现DES加密解密方法实例详解
Jun 30 Python
老生常谈Python进阶之装饰器
May 11 Python
AI人工智能 Python实现人机对话
Nov 13 Python
python3.6连接MySQL和表的创建与删除实例代码
Dec 28 Python
EM算法的python实现的方法步骤
Jan 02 Python
Pandas之ReIndex重新索引的实现
Jun 25 Python
Python代码太长换行的实现
Jul 05 Python
python是否适合网页编程详解
Oct 04 Python
利用pyshp包给shapefile文件添加字段的实例
Dec 06 Python
python opencv 检测移动物体并截图保存实例
Mar 10 Python
Anaconda配置pytorch-gpu虚拟环境的图文教程
Apr 16 Python
python实时监控logstash日志代码
Apr 27 Python
python分割文件的常用方法
Nov 01 #Python
跟老齐学Python之通过Python连接数据库
Oct 28 #Python
Python对象体系深入分析
Oct 28 #Python
Python中类的继承代码实例
Oct 28 #Python
Python列表list数组array用法实例解析
Oct 28 #Python
python实现无证书加密解密实例
Oct 27 #Python
深入理解Python 代码优化详解
Oct 27 #Python
You might like
PHP 数组教程 定义数组
2009/10/23 PHP
php实现的简单检验登陆类
2015/06/18 PHP
ext实现完整的登录代码
2008/08/08 Javascript
style、 currentStyle、 runtimeStyle区别分析
2010/08/01 Javascript
jQuery中outerWidth()方法用法实例
2015/01/19 Javascript
Javascript中的call()方法介绍
2015/03/15 Javascript
NodeJS设计模式总结【单例模式,适配器模式,装饰模式,观察者模式】
2017/09/06 NodeJs
jQuery+CSS实现的table表格行列转置功能示例
2018/01/08 jQuery
关于vue中watch检测到不到对象属性的变化的解决方法
2018/02/08 Javascript
JS获取本地地址及天气的方法实例小结
2019/05/10 Javascript
js判断浏览器的环境(pc端,移动端,还是微信浏览器)
2020/12/24 Javascript
小程序按钮避免多次调用接口和点击方案实现(不用showLoading)
2020/04/15 Javascript
在Vue中使用Select选择器拼接label的操作
2020/10/22 Javascript
测试、预发布后用python检测网页是否有日常链接
2014/06/03 Python
Python实现监控Nginx配置文件的不同并发送邮件报警功能示例
2019/02/26 Python
Python list列表中删除多个重复元素操作示例
2019/02/27 Python
python爬虫的一个常见简单js反爬详解
2019/07/09 Python
Python Process多进程实现过程
2019/10/22 Python
python数据爬下来保存的位置
2020/02/17 Python
Python进程Multiprocessing模块原理解析
2020/02/28 Python
将pymysql获取到的数据类型是tuple转化为pandas方式
2020/05/15 Python
Python如何生成xml文件
2020/06/04 Python
Python 字典一个键对应多个值的方法
2020/09/29 Python
python定时截屏实现
2020/11/02 Python
快速解决pymongo操作mongodb的时区问题
2020/12/05 Python
北美最大的手工艺品零售商之一:Michaels Stores
2019/02/27 全球购物
耐克波兰官方网站:Nike波兰
2019/09/03 全球购物
EJB的激活机制
2013/10/25 面试题
护理自荐信范文
2013/10/05 职场文书
教育科研先进个人材料
2014/01/26 职场文书
2014中考励志标语
2014/06/05 职场文书
小学生三分钟演讲稿
2014/08/18 职场文书
机关作风整顿个人整改措施思想汇报
2014/09/29 职场文书
2014年办公室文秘工作总结
2014/12/09 职场文书
应届生简历自我评价
2015/03/11 职场文书
学校运动会加油词
2015/07/18 职场文书