判断当前队列是否为空。
获取当前队列的长度。
获取队列顶部的值。
获取当前队列的迭代器。
从当前队列顶部取出一个回调函数并执行。
返回取出的回调函数。如果队列为空或已锁定则返回 undefined。
在当前队列末尾添加一个回调函数。
要添加的回调函数。
锁定当前队列。锁定后所有函数都将进入等待状态。
指定锁定的来源以供调试。
创建和当前队列等价的确认对象(Promise)。
返回一个确认对象(Promise)。
获取当前队列的等价数组。
获取当前队列的等价字符串。
解锁当前队列。解锁后所有函数恢复执行。
指定锁定的来源以供调试。
Generated using TypeDoc
表示一个异步队列。
异步队列可以缓冲多个函数,让这些函数串行执行。 队列实现了加锁/解锁模型,加锁时,所以函数都会等待解锁后再执行。
var q = new AsyncQueue(); q.enquee(function () { }); q.enquee(function (done) { setTimeout(done, 1000); }); q.enquee(function () { return new Promise(resolve => setTimeout(resolve, 1000)); }); q.enquee(function () { q.lock(); setTimeout(() => q.unlock(), 1000); });