我有一些客戶端腳本,它連接到套接字并等待數據。在服務器端有帶有 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
提交
取消