我使用Java中DatagramSocket
類從C語言編寫這裏客戶端接收UDP數據包是接收(服務器套接字已經建立)代碼:DatagramSocket.receive()問題
byte[] inputByte = new byte[1];
DatagramPacket recvdPacket = new DatagramPacket(inputByte, inputByte.length);
try {
serverSocket.receive(recvdPacket);
然後它打印內容。我的調試信息(在此代碼中未顯示)表明它正在成功訪問部件並正在等待(這是一個阻塞呼叫)。這裏是問題:
此服務器只接收數據包秒發送消息的客戶端運行時,從來沒有第一個。即使第一次運行客戶端發送多個數據包,服務器也不會顯示任何內容,直到整個客戶端運行第二次。假設問題出現在服務器端而不是客戶端是安全的嗎? (客戶端代碼不是由我寫的......這很噁心,並在C)。
嘗試獲取包嗅探器並查看客戶端是否實際首次發送內容。 –