我有一些客户端脚本,它连接到套接字并等待数据。在服务器端有带有 json 包装器的 ZeroMQ lib。所以,实际上,它是一个json数据格式的socket连接。它是来自 Metatrader 的股票市场数据。所以我每分钟等待一条数据线。因为我的时间范围是 M1。问题是为什么这个脚本会占用 100% 的 cpu?大多数时候它应该等待数据而不执行任何操作。我认为脚本中可能存在一些错误。但我还没有穿线技巧。请告诉我应该在哪里寻找问题。
1 回答
幕布斯6054654
TA贡献1876条经验 获得超7个赞
是你的:
while True:
pass
最后——它的重点是消耗CPU。添加一个小的睡眠使用time.sleep,CPU 使用率会降低。或者,如果您只等待线程完成,只需加入它们,它将阻塞,直到它们的执行完成。
例如。:
from time import sleep
while True:
sleep(0.1)
或者如果您将线程对象收集在列表中,您应该:
for t in threads:
t.join()
添加回答
举报
0/150
提交
取消