定義:負責管理逾時操作的類。
包含方法:
- Timeout timeout(long timeout, TimeUnit unit)
設定最多等待時間,傳回目前類對象。
- long timeoutNanos()
傳回設定的逾時時間(毫秒)
- boolean hasDeadline()
如果啟用了截止時間,傳回true
- long deadlineNanoTime()
傳回截止時間
- Timeout deadlineNanoTime(long deadlineNanoTime)
設定截止時間,傳回目前類對象。
- Timeout deadline(long duration, TimeUnit unit)
在現在時間的基礎上加上截止時間
- Timeout clearTimeout()
清除逾時控制,系統仍可以繼續使用。
- Timeout clearDeadline()
清楚截止時間
- void throwIfReached()
如果已達到截止日期或目前線程已被中斷,則抛出{@link InterruptedIOException}
具體檢測方法:1.線程是否被中斷 2.是否符合截止時間條件
- final void waitUntilNotified(Object monitor)
等待(monitor),直到收到通知。如果線程被中斷或在monitor之前逾時,抛出InterruptedIOException。必須在monitor上同步呼叫。