Options
All
  • Public
  • Public/Protected
  • All
Menu

Class WorkerJob

Worker任务。

通过调用WorkerSystem.createJob来创建,让开发者可以控制任务启动或者暂停。

创建任务后,任务不会自动运行,请手动调用一次start来启动任务。

Hierarchy

  • WorkerJob

Index

Events

setOnEnd

  • setOnEnd(endCallback: Function): void
  • 设置任务终止时的回调。

    Parameters

    • endCallback: Function

    Returns void

Accessors

data

  • get data(): object
  • 用于与worker交互的数据块,在创建任务时传入。

    Returns object

jobPath

  • get jobPath(): string
  • 开发者自己实现的任务类的路径,在创建任务时传入。

    Returns string

status

  • 任务状态

    • 新建任务后,任务不会立刻启动,状态为init
    • start()了之后任务启动,状态变为starting
    • worker环境内执行了一次任务之后,状态变为running(所以可以通过状态来判断worker有没有开始执行);
    • suspend()了之后,状态变为suspended
    • resume()了之后,状态变为starting;worker再执行一次之后变为running
    • dispose()了之后,状态变为destroying;帧末进行真实销毁,状态变为destroyed

    Returns EWorkerJobStatus

Methods

dispose

  • dispose(): void
  • 销毁worker内的任务。
    主线程内对应的任务回调也不会再执行。

    Returns void

resume

  • resume(): void
  • 重启(暂停中的)任务。
    任务状态会回到starting

    Returns void

setWorkCallback

  • setWorkCallback(workCallback?: (job: WorkerJob) => void): void
  • 重新设置主线程内的任务回调。

    如果在start前先调用这个方法设置了任务回调,那么start()即使不传入参数,也会继续沿用之前的任务回调。

    *可以用这个方法来清空任务回调。

    Parameters

    Returns void

start

  • start(workCallback?: (job: WorkerJob) => void): void
  • 启动任务。

    Parameters

    • Optional workCallback: (job: WorkerJob) => void

      主线程内的任务回调,每帧末worker执行完任务后调用。

    Returns void

suspend

  • suspend(): void
  • 暂停任务,会跳过每帧末的任务回调,worker内的任务也会暂停。

    Returns void

Generated using TypeDoc