Periodicalexecuter

4
Module PeriodicalExecuter

description

Prototype Javascript

Transcript of Periodicalexecuter

Page 1: Periodicalexecuter

Module

PeriodicalExecuter

Page 2: Periodicalexecuter

PeriodicalExecuter• This is a simple facility for periodical execution of a function. • This essentially encapsulates the native

clearInterval/setInterval mechanism found in native Window objects

• The only notable advantage provided by PeriodicalExecuter is that it shields you against multiple parallel executions of the callback function

• This is especially useful if you use one to interact with the user at given intervals (e.g. use a prompt or confirm call):

• This will avoid multiple message boxes all waiting to be

actioned.

Page 3: Periodicalexecuter

Creating a PeriodicalExecuter • The constructor takes two arguments the callback function, and the

interval (in seconds) between executions.

• Once launched, a PeriodicalExecuter triggers indefinitely, until the page unloads or the executer is manually stopped

Example;// Campfire style :-)  new PeriodicalExecuter(pollChatRoom, 3);  new PeriodicalExecuter(function(pe) {    if (!confirm('Want me to annoy you again later?'))      pe.stop();  }, 5);  // Note that there won't be a stack of such messages if the user takes 

too long answering to the question... 

  

Page 4: Periodicalexecuter

Stop a PeriodicalExecuter• stop()• Stops the periodical executer (there will be no further triggers).• Once a PeriodicalExecuter is created, it constitues an infinite loop,

triggering at the given interval until the page unloads. Example;var gCallCount = 0;new PeriodicalExecuter(function(pe) {  if (++gCallCount > 3)    pe.stop();  else    alert(gCallCount);} , 1);// Will only alert 1, 2 and 3, then the PE stops.