模拟抢票系统
2021/5/20 18:26:44
本文主要是介绍模拟抢票系统,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
from multiprocessing import Process,Lock import json,time,random,os def piao(mutex): mutex.acquire() #作用:按顺序购票,不会插队 dic = json.load(open('db.txt')) #读取,查看车票总数 if dic['count'] > 0: dic['count'] -=1 time.sleep(random.randint(1,3)) #每个人的购票时间都不同 json.dump(dic,open('db.txt','w')) #购买之后重新写入数据 print('【%s 购票成功,剩余票数%s】'%(os.getpid(),dic['count'])) mutex.release() # 结束的时候必须开锁,否则别人进不来 if __name__ == '__main__': #Windows系统默认用这个 mutex = Lock() for i in range(14): #14个人购票 p = Process(target=piao,args=(mutex,)) p.start()
这篇关于模拟抢票系统的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2025-01-04百万架构师第六课:设计模式:策略模式及模板模式
- 2025-01-04百万架构师第七课:设计模式:装饰器模式及观察者模式
- 2025-01-04适用于企业管理的协作工具API推荐
- 2025-01-04挑战16:被限流的CPU
- 2025-01-03企业在选择工具时,如何评估其背后的技术团队
- 2025-01-03Angular中打造动态多彩标签组件的方法
- 2025-01-03Flask过时了吗?FastAPI才是未来?
- 2025-01-0311个每位开发者都应知道的免费实用网站
- 2025-01-03从REST到GraphQL:为什么以及我是如何完成转型的
- 2025-01-03掌握RAG:从单次问答到连续对话