「理解したい」という質問があります。まず、Ubuntuでpython2.6.5を使用しています。
つまり、Pythonのスレッド(スレッドモジュール経由)は単なる「スレッド」であり、GILに特定の期間などに各「スレッド」からコードブロックを実行するように指示するだけです。実際にはありません。ここに実際のスレッドがあります。
したがって、問題は、1つのスレッドにブロッキングソケットがあり、データを送信して5秒間スレッドをブロックしている場合です。sock.send
スレッドをブロックしているのは1つのCコマンド()であるため、すべてのプログラムをブロックすることを期待していました。しかし、メインスレッドが引き続き実行されているのを見て驚いた。したがって、問題は、GILがsendなどのブロッキングコマンドに到達した後、残りのコードをどのように続行して実行できるかということです。ここでは本物の糸を使わなくてはいけませんか?
ありがとう。