ノンブロッキングソケットからデータを受信するのに最適なスリープ値を探しています。例えば:ノンブロッキングコールのスリープ
while True:
data=s.recv(1024)
if not data:
time.sleep(10) #10ms
else:
pass #...
ませ睡眠は、100%のCPU使用率につながるないので、最高のCPU使用率を取得し、帯域幅にする方法任意のアイデアでしょうか?どのくらいの時間スリープ状態になるので、CPUはスレッド切り替えを行うことができますか?
Btw、SO_SNDBUF/SO_RECVBUF経由でソケットのバッファを設定し、TCP_NODELAYを設定するのは理にかなっているのですか?
パターンを解除します。今すぐ!関数sleep()が存在するのを忘れてしまいました。 'sleep()'を使うたびに、もっと適切な方法があります。 –