从外部取消异步

时间:2015-10-16 21:18:40

标签: javascript asynchronous

我有异步系列,用于从我的游戏中的玩家收集键绑定信息:

image description

整个操作以一系列调用发生,每个键一个:

async.series([
      function(callback){controls.getKey("left", callback);},
      function(callback){controls.getKey("right", callback);},
      ... 
]);

在获取控件时,会向服务器发送一个请求以创建具有给定用户名的播放器。 可能发生服务器拒绝请求。在这种情况下,收到事件,并且没有必要继续从用户收集控制键。

所以我的问题是,async.series是否会返回一些允许我取消队列的引用?

我想要这样的事情:

var series = async.series([ ... ]); 
game.on("playerRefused", function() {
    series.abort();  // After calling this, the next entry in series fill not execute
});

我为controls.getKey使用单独的模块,我不想在该模块中引用game对象。我正在尝试保持我的项目结构化和模块化,因此相互依赖的东西越少越好。

0 个答案:

没有答案