私のデータグラム ソケットは、設定されているにもかかわらず SocketTimeout をスローしていません。これを解決する方法がわかりません。コードは次のとおりです。問題は、このソケット接続に沿ってメッセージを受信しない場合、最初の実行でタイムアウトになることです。ただし、メッセージを数回正常に受信し、後で .receive が呼び出されたときにタイムアウトしません。
DatagramSocket serverSocket = new DatagramSocket(serverSyncPort);
serverSocket.setSoTimeout(200);
while(true)
{
receiveData = new byte[1024];
receivePacket = new DatagramPacket(receiveData,receiveData.length);
try
{
serverSocket.receive(receivePacket);
}
catch(SocketTimeoutException e) {}
}