Class AsyncQueue

异步队列处理

Example

var queue: AsyncQueue = new AsyncQueue();
queue.push((next: NextFunction, params: any, args: any) => {
oops.res.load("language/font/" + oops.language.current, next);
});
queue.push((next: NextFunction, params: any, args: any) => {
oops.res.loadDir("common", next);
});
queue.complete = () => {
console.log("处理完成");
};
queue.play();

Hierarchy

  • AsyncQueue

Constructors

Properties

_enable: boolean = true
_isProcessingTaskUUID: number = 0
_queues: AsyncTask[] = []
_runningAsyncTask: null | AsyncTask = null
complete: null | Function = null

任务队列完成回调

_$uuid_count: number = 1

Accessors

  • get enable(): boolean
  • 是否开启可用

    Returns boolean

  • set enable(val: boolean): void
  • 是否开启可用

    Parameters

    • val: boolean

    Returns void

  • get isProcessing(): boolean
  • 是否有正在处理的任务

    Returns boolean

  • get isStop(): boolean
  • 队列是否已停止

    Returns boolean

  • get queues(): AsyncTask[]
  • 任务队列

    Returns AsyncTask[]

  • get runningParams(): any
  • 正在执行的任务参数

    Returns any

  • get size(): number
  • 队列长度

    Returns number

Methods

  • 清空队列

    Returns void

  • Parameters

    • taskUUID: number
    • args: any = null

    Returns void

  • 开始运行队列

    Parameters

    • args: any = null

      参数

    Returns void

  • 添加一个异步任务到队列中

    Parameters

    Returns number

  • 添加多个任务,多个任务函数会同时执行

    Returns

    Parameters

    • params: any

      参数据

    • Rest ...callbacks: AsyncCallback[]

      回调

    Returns number

  • 移除一个还未执行的异步任务

    Parameters

    • uuid: number

      任务唯一编号

    Returns void

  • 跳过当前正在执行的任务

    Returns void

  • 往队列中push一个延时任务

    Parameters

    • time: number

      毫秒时间

    • callback: null | Function = null

      (可选参数)时间到了之后回调

    Returns void

  • 返回一个执行函数,执行函数调用count次后,next将触发

    Returns

    返回一个匿名函数

    Parameters

    • count: number
    • next: null | Function = null

    Returns Function

Generated using TypeDoc