PythonLibrary中的Semaphore操作方案详解

Python Library作为计算机语言中常用的语言,很多人都会接触到Python Library中的Semaphore这一计算机语言,一下的文章就是对其实际应用操作方案的具体介绍,希望你浏览完以下的文章会对你有所帮助。

Python Library Semaphore和 .NET Semaphore 一样,限制可同时访问某一资源的线程数。

 
 
 
  1. lock = Semaphore(2)
  2. def test():
  3. with lock:
  4. for i in range(5):
  5. print currentThread().name, i
  6. sleep(1)
  7. for i in range(5):
  8. Thread(target = test).start()  

输出:

 
 
 
  1. $ ./main.py

Thread-1 0 <--- Thread-1 和 Thread-2 获得锁

 
 
 
  1. Thread-2 0
  2. Thread-1 1
  3. Thread-2 1
  4. Thread-1 2
  5. Thread-2 2
  6. Thread-1 3
  7. Thread-2 3
  8. Thread-1 4
  9. Thread-2 4

Thread-3 0 <--- Thread-3 和 Thread-4 获得锁

 
 
 
  1. Thread-4 0
  2. Thread-3 1
  3. Thread-4 1
  4. Thread-3 2
  5. Thread-4 2
  6. Thread-3 3
  7. Thread-4 3
  8. Thread-3 4
  9. Thread-4 4

Thread-5 0 <--- Thread-5 获得锁

 
 
 
  1. Thread-5 1
  2. Thread-5 2
  3. Thread-5 3
  4. Thread-5 4

以上就是对Python Library中的Semaphore实际应用操作方案详解的相关介绍。

网站栏目:PythonLibrary中的Semaphore操作方案详解
文章链接:http://www.hantingmc.com/qtweb/news48/442198.html

成都网站建设公司_创新互联,为您提供服务器托管定制网站企业网站制作网站设计公司移动网站建设品牌网站建设

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联