Class Rescheduler


  • final class Rescheduler
    extends java.lang.Object
    Reschedules a runnable lazily.
    • Field Summary

      Fields 
      Modifier and Type Field Description
      private boolean enabled  
      private long runAtNanos  
      private java.lang.Runnable runnable  
      private java.util.concurrent.ScheduledExecutorService scheduler  
      private java.util.concurrent.Executor serializingExecutor  
      private com.google.common.base.Stopwatch stopwatch  
      private java.util.concurrent.ScheduledFuture<?> wakeUp  
    • Constructor Summary

      Constructors 
      Constructor Description
      Rescheduler​(java.lang.Runnable r, java.util.concurrent.Executor serializingExecutor, java.util.concurrent.ScheduledExecutorService scheduler, com.google.common.base.Stopwatch stopwatch)  
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      (package private) void cancel​(boolean permanent)  
      (package private) static boolean isEnabled​(java.lang.Runnable r)  
      private long nanoTime()  
      (package private) void reschedule​(long delay, java.util.concurrent.TimeUnit timeUnit)  
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Field Detail

      • scheduler

        private final java.util.concurrent.ScheduledExecutorService scheduler
      • serializingExecutor

        private final java.util.concurrent.Executor serializingExecutor
      • runnable

        private final java.lang.Runnable runnable
      • stopwatch

        private final com.google.common.base.Stopwatch stopwatch
      • runAtNanos

        private long runAtNanos
      • enabled

        private boolean enabled
      • wakeUp

        private java.util.concurrent.ScheduledFuture<?> wakeUp
    • Constructor Detail

      • Rescheduler

        Rescheduler​(java.lang.Runnable r,
                    java.util.concurrent.Executor serializingExecutor,
                    java.util.concurrent.ScheduledExecutorService scheduler,
                    com.google.common.base.Stopwatch stopwatch)
    • Method Detail

      • reschedule

        void reschedule​(long delay,
                        java.util.concurrent.TimeUnit timeUnit)
      • cancel

        void cancel​(boolean permanent)
      • isEnabled

        static boolean isEnabled​(java.lang.Runnable r)
      • nanoTime

        private long nanoTime()