public class TimeoutPauser extends Object implements Pauser, TimingPauser
Pauser.SleepyWarningMIN_PROCESSORS, SLEEPY| Constructor and Description |
|---|
TimeoutPauser(int minBusy)
first it will busy wait, then it will yield, then sleep for a small amount of time, then
increases to a large amount of time.
|
| Modifier and Type | Method and Description |
|---|---|
long |
countPaused()
Returns the number of times the pauser has checked for
completion.
|
void |
pause()
Pauses the current thread.
|
void |
pause(long timeout,
TimeUnit timeUnit)
use
TimingPauser.pause(long, TimeUnit) instead |
void |
reset()
Resets the pauser's internal state back to the most aggressive setting.
|
long |
timePaused()
Returns the paused time so far in milliseconds.
|
void |
unpause()
Try to cancel the pausing if it is pausing.
|
public TimeoutPauser(int minBusy)
minBusy - the min number of times it will go around doing nothing, after this is
reached it will then start to yieldpublic void reset()
PauserCall this if you just did some work.
public void pause()
PauserDepending on the implementation this could do nothing (busy spin), yield, sleep, ...
Call this if no work was done.
public void pause(long timeout,
@NotNull
TimeUnit timeUnit)
throws TimeoutException
PauserTimingPauser.pause(long, TimeUnit) insteadpause in interface Pauserpause in interface TimingPausertimeout - timeouttimeUnit - unitTimeoutException - thrown if timeout passespublic void unpause()
PauserNo guarantee is made as to if unpause will actually have an effect.
public long timePaused()
PausertimePaused in interface Pauserpublic long countPaused()
PausercountPaused in interface PauserCopyright © 2020. All rights reserved.