码迷,mamicode.com
首页 > 编程语言 > 详细

python-day33--互斥锁

时间:2017-08-25 17:00:50      阅读:355      评论:0      收藏:0      [点我收藏+]

标签:imp   and   task   load   gif   tip   ==   mutex   isp   

锁的意思就是:一个一个的执行
技术分享
 1 from multiprocessing import Process,Lock
 2 import os
 3 import time
 4 def work(mutex):
 5     mutex.acquire()
 6     print(task[%s] 上厕所 %os.getpid())
 7     time.sleep(3)
 8     print(task[%s] 上完厕所 %os.getpid())
 9     mutex.release()
10 
11 if __name__ == __main__:
12     mutex=Lock()
13     p1=Process(target=work,args=(mutex,))
14     p2=Process(target=work,args=(mutex,))
15     p3=Process(target=work,args=(mutex,))
16     p1.start()
17     p2.start()
18     p3.start()
19 
20     print()
互斥锁
技术分享
 1 from multiprocessing import Process,Lock
 2 import json
 3 import time
 4 import random
 5 import os
 6 def search():
 7     dic=json.load(open(a,))
 8     print(剩余票数%s %dic[count])
 9 
10 def get_ticket():
11     dic=json.load(open(a,))
12     if dic[count] > 0:
13         dic[count]-=1
14         json.dump(dic,open(a,w))
15         print(%s 购票成功 %os.getpid())
16 def task(mutex):
17     search()
18     time.sleep(random.randint(1, 3)) #模拟购票一系列繁琐的过程所花费的时间
19     mutex.acquire()
20     get_ticket()
21     mutex.release()
22 if __name__ == __main__:
23     mutex=Lock()
24     for i in range(50):
25         p=Process(target=task,args=(mutex,))
26         p.start()
模拟抢票

 

python-day33--互斥锁

标签:imp   and   task   load   gif   tip   ==   mutex   isp   

原文地址:http://www.cnblogs.com/liuwei0824/p/7428483.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!