SO_TIMEOUT選項:
1,socket
setSoTimeout
public void setSoTimeout(int timeout) throws SocketException
- 啓用/禁用帶有指定超時值的 SO_TIMEOUT,以毫秒爲單位。將此選項設爲非零的超時值時,在與此 Socket 關聯的 InputStream 上調用 read() 將只阻塞此時間長度。如果超過超時值,將引發 java.net.SocketTimeoutException,雖然 Socket 仍舊有效。選項必須在進入阻塞操作前被啓用才能生效。超時值必須是 > 0 的數。超時值爲 0 被解釋爲無窮大超時值。
-
- 參數:
timeout
- 指定的以毫秒爲單位的超時值。- 拋出:
SocketException
- 如果底層協議出現錯誤,例如 TCP 錯誤。- 從以下版本開始:
- JDK 1.1
- 另請參見:
getSoTimeout()
setSoTimeout
public void setSoTimeout(int timeout) throws SocketException
- 通過指定超時值啓用/禁用 SO_TIMEOUT,以毫秒爲單位。將此選項設爲非零的超時值時,對此 ServerSocket 調用 accept() 將只阻塞此時間長度。如果超過超時值,將引發 java.net.SocketTimeoutException,雖然 ServerSocket 仍舊有效。選項必須在進入阻塞操作前被啓用才能生效。超時值必須是 > 0 的數。超時值爲 0 被解釋爲無窮大超時值。
-
- 參數:
timeout
- 指定的超時(以毫秒爲單位)- 拋出:
SocketException
- 如果在底層協議中存在錯誤,如 TCP 錯誤。- 從以下版本開始:
- JDK1.1
- 另請參見:
getSoTimeout()