Python接口循环下单时会有下单失败
代码:
def create_re_pay(num): for i in range(num): GovernmentApiClient().re_pay() create_re_pay(3)
结果:
{'code': 200, 'msg': '处理成功', 'time': 1661839781568, 'success': True, 'data': {'thirdOrderNo': '5rd20220830140955', 'platformOrderNo': 'LO20220830000000054', 'outOrderNo': 'LO20220830000000054', 'tradeTime': '2022083024140941', 'payAmount': '100000', 'status': '1'}} {'code': 400, 'msg': '创建融资订单失败', 'time': 1661839781671, 'success': False} {'code': 400, 'msg': '创建融资订单失败', 'time': 1661839781737, 'success': False}
我们可以看到,只有第一条下单成功了,正常是应该全部下单成功的,那么是什么原因导致的其余的2条没下单成功呢?
原来是【全局解释器锁(Global Interpreter Lock,GIL)】的问题,GIL是一个互斥锁,它在任一时刻只允许一个线程对字节码进行执行,所以就要使用多进程或是加一个等待时间了
def create_re_pay(num): for i in range(num): sleep(1) GovernmentApiClient().re_pay()
本文来自博客园,作者:他还在坚持嘛,转载请注明原文链接:他还在坚持嘛 https://www.cnblogs.com/brf-test/p/16639182.html
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
· 周边上新:园子的第一款马克杯温暖上架