GNURadioプログラムでPythonのtime.sleep()関数を使用しています。ただし、浮動小数点引数を指定したにもかかわらず、コードで予期しない浮動小数点例外が発生します。以下の関連するコードスニペットを見つけてください(デバッグ「Hehe」の:-)を無視してください):
while not ack and timeout < 5: #FIXME: Hard-coded timeout interval
print "Hehe5"
timeout+=1
print "Hehe6"
time.sleep(0.5)
print "Hehe7"
with lock:
ack=recvd_prev_ack
print "Hehe8"
これにより、次の出力が得られます。
Sent pktno= 0
Hehe
Hehe1
Hehe2
Hehe3
Hehe4
Hehe5
Hehe6
Floating point exception
したがって、エラーのポイントは実際にはtime.sleep()です。誰かがここで何が起こっているのか説明してもらえますか?私のPythonバージョンは2.7.1です。
よろしく、Dhrubo