async.Throttle Extends goog.Disposable
Throttle will perform an action that is passed in no more than once per interval (specified in milliseconds). If it gets multiple signals to perform the action while it is waiting, it will only perform the action once at the end of the interval.

Inheritance

Constructor

goog.async.Throttle(listenerintervalopt_handler)

Parameters

listener : function(this: T)
Function to callback when the action is triggered.
interval : number
Interval over which to throttle. The listener can only be called once per interval.
opt_handler : T=
Object in whose scope to call the listener.

Instance Methods

Public Protected Private
disposeInternal()
No description.
code »
doAction_()
Calls the callback
code »
fire()
Notifies the throttle that the action has happened. It will throttle the call so that the callback is not called too often according to the interval parameter passed to the constructor.
code »
listener_()
Function to callback
code »
onTimer_()
Handler for the timer to fire the throttle
code »
pause()
Pauses the throttle. All pending and future action callbacks will be delayed until the throttle is resumed. Pauses can be nested.
code »
resume()
Resumes the throttle. If doing so drops the pausing count to zero, pending action callbacks will be executed as soon as possible, but still no sooner than an interval's delay after the previous call. Future action callbacks will be executed as normal.
code »
stop()
Cancels any pending action callback. The throttle can be restarted by calling #fire.
code »
addOnDisposeCallback(callbackopt_scope)
Invokes a callback function when this object is disposed. Callbacks are invoked in the order in which they were added.
Arguments:
callback : function(this:T):?
The callback function.
opt_scope : T=
An optional scope to call the callback in.
code »
dispose() void
Disposes of the object. If the object hasn't already been disposed of, calls #disposeInternal. Classes that extend goog.Disposable should override #disposeInternal in order to delete references to COM objects, DOM nodes, and other disposable objects. Reentrant.
Returns: void  Nothing.
code »
disposeInternal()
Deletes or nulls out any references to COM objects, DOM nodes, or other disposable objects. Classes that extend goog.Disposable should override this method. Not reentrant. To avoid calling it twice, it must only be called from the subclass' disposeInternal method. Everywhere else the public dispose method must be used. For example:
  mypackage.MyClass = function() {
    mypackage.MyClass.base(this, 'constructor');
    // Constructor logic specific to MyClass.
    ...
  };
  goog.inherits(mypackage.MyClass, goog.Disposable);

  mypackage.MyClass.prototype.disposeInternal = function() {
    // Dispose logic specific to MyClass.
    ...
    // Call superclass's disposeInternal at the end of the subclass's, like
    // in C++, to avoid hard-to-catch issues.
    mypackage.MyClass.base(this, 'disposeInternal');
  };
code »
getDisposed() boolean
Use #isDisposed instead. No description.
Returns: boolean  Whether the object has been disposed of.
code »
isDisposed() boolean
No description.
Returns: boolean  Whether the object has been disposed of.
code »
registerDisposable(disposable)
Associates a disposable object with this object so that they will be disposed together.
Arguments:
disposable : goog.disposable.IDisposable
that will be disposed when this object is disposed.
code »

Instance Properties

callback_ :
Cached callback function invoked after the throttle timeout completes
Code »
constructor :
No description.
Code »
handler_ :
"this" context for the listener
Code »
interval_ :
Interval for the throttle time
Code »
pauseCount_ :
Indicates the count of nested pauses currently in effect on the throttle. When this count is not zero, fired actions will be postponed until the throttle is resumed enough times to drop the pause count to zero.
Code »
shouldFire_ :
Indicates that the action is pending and needs to be fired.
Code »
timer_ :
Timer for scheduling the next callback
Code »
creationStack :
If monitoring the goog.Disposable instances is enabled, stores the creation stack trace of the Disposable instance.
Code »
disposed_ :
Whether the object has been disposed of.
Code »
onDisposeCallbacks_ :
Callbacks to invoke when this object is disposed.
Code »

Static Properties

goog.async.Throttle.superClass_ :
No description.
Code »

Package async

Package Reference