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中使用tarfile压缩、解压tar归档文件示例
Apr 05 Python
python图像处理之镜像实现方法
May 30 Python
浅谈python中截取字符函数strip,lstrip,rstrip
Jul 17 Python
Python cookbook(数据结构与算法)从字典中提取子集的方法示例
Mar 22 Python
numpy中以文本的方式存储以及读取数据方法
Jun 04 Python
python实现二级登陆菜单及安装过程
Jun 21 Python
pycharm中显示CSS提示的知识点总结
Jul 29 Python
django创建超级用户过程解析
Sep 18 Python
python selenium实现发送带附件的邮件代码实例
Dec 10 Python
python 将dicom图片转换成jpg图片的实例
Jan 13 Python
Python中的Cookie模块如何使用
Jun 04 Python
Python 找出英文单词列表(list)中最长单词链
Dec 14 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使用mysqli和pdo扩展,测试对比mysql数据库的执行效率完整示例
2019/05/09 PHP
解决laravel id非自增 模型取回为0 的问题
2019/10/11 PHP
js 函数的副作用分析
2011/08/23 Javascript
JavaScript面向对象知识串结(读JavaScript高级程序设计(第三版))
2012/07/17 Javascript
node.js中的events.emitter.listeners方法使用说明
2014/12/10 Javascript
JavaScript中的alert()函数使用技巧详解
2014/12/29 Javascript
浅谈vue-cli加载不到dev-server.js的解决办法
2017/11/24 Javascript
Javascript实现购物车功能的详细代码
2018/05/08 Javascript
CentOS7中源码编译安装NodeJS的完整步骤
2018/10/13 NodeJs
解决layui追加或者动态修改的表单元素“没效果”的问题
2019/09/18 Javascript
Vue中fragment.js使用方法小结
2020/02/17 Javascript
Python进程间通信Queue实例解析
2018/01/25 Python
Python编程实现从字典中提取子集的方法分析
2018/02/09 Python
Flask web开发处理POST请求实现(登录案例)
2018/07/26 Python
Python给定一个句子倒序输出单词以及字母的方法
2018/12/20 Python
对Python实现累加函数的方法详解
2019/01/23 Python
详解Python并发编程之从性能角度来初探并发编程
2019/08/23 Python
Django后台管理系统的图文使用教学
2020/01/20 Python
使用tensorflow实现矩阵分解方式
2020/02/07 Python
Python爬虫爬取有道实现翻译功能
2020/11/27 Python
浅析图片上传及canvas压缩的流程
2020/06/10 HTML / CSS
Snapfish爱尔兰:在线照片打印和个性化照片礼品
2018/09/17 全球购物
娇韵诗俄罗斯官方网站:Clarins俄罗斯
2020/10/03 全球购物
adidas马来西亚官网:adidas MY
2020/09/12 全球购物
医药大学生求职简历的自我评价
2013/10/17 职场文书
经管应届生求职信
2013/11/17 职场文书
高一化学教学反思
2014/02/05 职场文书
小学国庆节活动方案
2014/02/11 职场文书
社区食品安全实施方案
2014/03/28 职场文书
经典演讲稿汇总
2014/05/19 职场文书
2014县委书记党的群众路线教育实践活动对照检查材料思想汇报
2014/09/22 职场文书
教师党员自我评议不足范文
2014/10/19 职场文书
原告代理词范文
2015/05/25 职场文书
烈士陵园扫墓感想
2015/08/07 职场文书
pytorch 权重weight 与 梯度grad 可视化操作
2021/06/05 Python
Python下opencv使用hough变换检测直线与圆
2021/06/18 Python