socket.ReceiveFrom (byte [] message, EndPoint endPoint)
バインドされたUDPソケットでデータを受信するために使用され、データが受信されない場合はどうなりますか?データが到着するのを待ち続けますか、それとも継続しますか?私は特にUDPデータグラムについて話している。
1524 次
2 に答える
2
データ待ちになります。この動作が十分でない場合は、非同期受信を使用できます。UDPClient も使用します。Socket 自体でロールする必要はありません。
読み取り可能なデータがない場合、データが使用可能になるまで ReceiveFrom メソッドはブロックされます。
ソース: http://msdn.microsoft.com/en-us/library/aa329728%28v=vs.71%29.aspx
于 2011-12-31T05:19:10.007 に答える
1
目標が X 秒後にソケットのリッスンを強制的に停止することであり、他のこと (アプリケーションがシャットダウンしているかどうかの確認など) を実行できるようにすることであり、同期ソケットを使用している場合は、Socket.ReceiveTimeout
X 秒に設定することをお勧めします。 (ミリ秒単位であるため、1000 倍Socket.ReceiveTimeout
)、タイムアウト時に発生した結果の例外をキャッチします。
于 2011-12-31T06:00:21.327 に答える