okhttp3源码分析之Timeout

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/yangshuaionline/article/details/89085091

定义:负责管理超时操作的类。

包含方法:

  1. Timeout timeout(long timeout, TimeUnit unit)

设置最多等待时间,返回当前类对象。

  1. long timeoutNanos()

返回设置的超时时间(毫秒)

  1. boolean hasDeadline()

如果启用了截止时间,返回true

  1. long deadlineNanoTime()

返回截止时间

  1. Timeout deadlineNanoTime(long deadlineNanoTime)

设置截止时间,返回当前类对象。

  1. Timeout deadline(long duration, TimeUnit unit)

在现在时间的基础上加上截止时间

  1. Timeout clearTimeout()

清除超时控制,系统仍可以继续使用。

  1. Timeout clearDeadline()

清楚截止时间

  1. void throwIfReached()

如果已达到截止日期或当前线程已被中断,则抛出{@link InterruptedIOException}
具体检测方法:1.线程是否被中断 2.是否符合截止时间条件

  1. final void waitUntilNotified(Object monitor)

等待(monitor),直到收到通知。如果线程被中断或在monitor之前超时,抛出InterruptedIOException。必须在monitor上同步呼叫。

猜你喜欢

转载自blog.csdn.net/yangshuaionline/article/details/89085091