Class Timers


  • public class Timers
    extends java.lang.Object
    This class supports the "setTimeout" and "clearTimeout" methods of semi-standard JavaScript. It does it within a single thread by keeping track of a queue of timeout objects, and then it blocks the thread. It's used solely within the Shell right now.
    • Constructor Summary

      Constructors 
      Constructor Description
      Timers()  
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void install​(Scriptable scope)
      Initialize the "setTimeout" and "clearTimeout" functions on the specified scope.
      void runAllTimers​(Context cx, Scriptable scope)
      Execute all pending timers and microtasks, blocking the thread if we need to wait for any timers to time out.
      • Methods inherited from class java.lang.Object

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

      • Timers

        public Timers()
    • Method Detail

      • install

        public void install​(Scriptable scope)
        Initialize the "setTimeout" and "clearTimeout" functions on the specified scope.
        Parameters:
        scope - the scope where the functions should be defined
      • runAllTimers

        public void runAllTimers​(Context cx,
                                 Scriptable scope)
                          throws java.lang.InterruptedException
        Execute all pending timers and microtasks, blocking the thread if we need to wait for any timers to time out.
        Parameters:
        cx - The Context to use to execute microtasks and timer functions
        scope - the global scope
        Throws:
        java.lang.InterruptedException - if the thread is interrupted while sleeping