code: function run(pool, idx, executionFunction) {
    var p = Promise.resolve()
      .then(executionFunction)
      .then(function() {
        delete pool.promises[idx];
        var next = pool.queue.pop();
        if (next) {
          pool.execute(next);
        }
      });
    pool.promises[idx] = p;
    return p;
  }
docs: /* Run the function immediately.