|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectcom.atlassian.util.concurrent.Timeout
@Immutable public final class Timeout
Automatically calculates elapsed time from when it is created. Useful when successively calling blocking methods and a time since call time needs to be worked out.
Usage:
Timeout timeout = Timeout.getNanosTimeout(1, TimeUnit.SECONDS); String str = futureString.get(timeout.getTime(), timeout.getUnit()); Integer num = futureInt.get(timeout.getTime(), timeout.getUnit());where if the first call takes quarter of a second, the second call is passed the equivalent of three-quarters of a second.
Method Summary | |
---|---|
static Timeout |
getMillisTimeout(long time,
java.util.concurrent.TimeUnit unit)
Get a Timeout that uses nanosecond precision. |
static Timeout |
getNanosTimeout(long time,
java.util.concurrent.TimeUnit unit)
Get a Timeout that uses nanosecond precision. |
long |
getTime()
|
java.util.concurrent.TimeUnit |
getUnit()
|
boolean |
isExpired()
Has this timeout expired |
void |
throwTimeoutException()
Always throws a TimeoutException . |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Method Detail |
---|
public static Timeout getNanosTimeout(long time, java.util.concurrent.TimeUnit unit)
Timeout
that uses nanosecond precision. The accuracy will
depend on the accuracy of System.nanoTime()
.
time
- the maximum time to wait for the lockunit
- the time unit of the time argument.
TimeUnit.NANOSECONDS
precision.public static Timeout getMillisTimeout(long time, java.util.concurrent.TimeUnit unit)
Timeout
that uses nanosecond precision. The accuracy will
depend on the accuracy of System.nanoTime()
.
time
- the maximum time to wait for the lockunit
- the time unit of the time argument.
TimeUnit.NANOSECONDS
precision.public long getTime()
public java.util.concurrent.TimeUnit getUnit()
public boolean isExpired()
public void throwTimeoutException() throws TimedOutException
TimeoutException
.
TimedOutException,
- always.
TimedOutException
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |