簡體   English   中英

DatagramSocket.receive()何時會引發IOException?

[英]When does DatagramSocket.receive() throw IOException?

我正在創建一個服務器,該服務器需要偵聽傳入的UDP程序包。

我的問題是我不知道如何處理DatagramSocket.receive()上的IOException 我可以找到的每個教程都只是打印其堆棧跟蹤並繼續進行操作,或者將其從方法中丟棄。 實際上沒有人告訴我何時或為什么引發異常。 甚至Javadoc都只聲明:

IOException - if an I/O error occurs when creating the socket.

這使我很難回答在這種情況下應采取的措施。

  • 我可以安全地恢復讀取套接字嗎?
  • 我應該關閉並重試嗎?
  • 我應該將其視為致命的異常並退出所有內容嗎?

如果您設置了讀取超時,並且超時,它將拋出SocketTimeoutException 在這種情況下,您可以重試。 如果有其他錯誤,它將拋出IOException :大多數錯誤對套接字來說是致命的,您必須將其關閉。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM