/** * {@inheritDoc} */ public void idle() { final int status = (int)statusIndicatorReader.getVolatile(); switch (status) { case NOOP: break; case BUSY_SPIN: ThreadHints.onSpinWait(); break; case YIELD: Thread.yield(); break; case PARK: default: LockSupport.parkNanos(PARK_PERIOD_NANOSECONDS); break; } }
/** * {@inheritDoc} */ public void idle() { final int status = (int)statusIndicatorReader.getVolatile(); switch (status) { case NOOP: break; case BUSY_SPIN: ThreadHints.onSpinWait(); break; case YIELD: Thread.yield(); break; case PARK: default: LockSupport.parkNanos(PARK_PERIOD_NANOSECONDS); break; } }
/** * {@inheritDoc} */ public void idle() { final int status = (int)statusIndicatorReader.getVolatile(); switch (status) { case NOOP: break; case BUSY_SPIN: ThreadHints.onSpinWait(); break; case YIELD: Thread.yield(); break; case PARK: default: LockSupport.parkNanos(PARK_PERIOD_NANOSECONDS); break; } }