PYTHON线程知识再研习D---可重入锁
2014-09-04 18:01
183 查看
不多解释,预防普通锁不正规的获取与释放
#!/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 += 1 msg = self.name + ' set num to ' + str(num) print msg mutex.acquire() mutex.release() mutex.release() num = 0 mutex = threading.RLock() def test(): for i in range(5): t = MyThread() t.start() t.join() print 'ALL DONE' if __name__ == '__main__': test()
相关文章推荐
- PYTHON线程知识再研习C---线程互斥锁
- PYTHON线程知识再研习F---队列同步Queue
- PYTHON线程知识再研习A
- PYTHON线程知识再研习G--线程间通信Event
- PYTHON线程知识再研习E---条件变量同步Condition
- PYTHON线程知识再研习B
- 进程和线程的基础知识——Python学习笔记11
- Python能否实现超时,以及一些关于线程知识的复习
- c#重点知识详解(六:线程)
- 基础知识:进程和线程的区别
- 线程基础知识
- 线程基础知识
- Python: threading.local是全局变量但是它的值却在当前调用它的线程当中
- 线程基础知识
- c#重点知识详解(六:线程)
- c#重点知识详解(六:线程)
- 线程和进程基础知识(同步I/O)
- 线程的基础知识(转载自huntjap的专栏)
- 线程的基础知识
- 关于Python的线程