Skip to main content
2 of 3
deleted 11 characters in body
CodesInChaos
  • 5.8k
  • 4
  • 22
  • 27

What is this pattern called? Run finally?

Is there a name for this pattern? I've written this kind of thing a few times in JavaScript and recently found myself writing it in C#. Thing is, I expect this has already been implemented in a library somewhere I didn't know what to look for.

In pseudo code it's something like this:

var referenceToPreviousRequest = null;
if (null != referenceToPreviousRequest) {
    referenceToPreviousRequest.cancel();
}
    
referenceToPreviousRequest = setTimeout(function() {
    //The thing I ultimately want to do
}, 1000 /*The delay after the last request*/);

Typically I use this kind of code in client side JavaScript, for delaying an AJAX request until a certain amount of time after the last user input, e.g. searching.

Ian Newson
  • 882
  • 5
  • 14