TaskProcessor

new Cesium.TaskProcessor(workerName, maximumActiveTasks)

web worker的包装器,允许为给定的worker调度任务, 通过承诺异步返回结果。 在调度任务之前,不会构造工作线程。
Name Type Default Description
workerName String 工人的姓名。这应该是一个脚本 在Workers文件夹中。
maximumActiveTasks Number 5 optional 活动任务的最大数目。一旦超过, scheduleTask将不再对任何任务排队,允许 工作将在未来的框架内重新安排。

Methods



销毁此对象。这将立即终止工作人员。 一旦一个对象被销毁,就不应该使用它;调用除 isDestroyed将导致DeveloperError异常。

initWebAssemblyModule(webAssemblyOptions)Promise.<Object>

向具有初始化加载配置的web worker发布消息 以及异步编译web程序集模块以及可选的 不支持Web程序集时要使用的回退JavaScript模块。
Name Type Description
webAssemblyOptions Object optional 具有以下属性的对象:
Name Type Description
modulePath String optional web程序集JavaScript包装模块的路径。
wasmBinaryFile String optional web程序集二进制文件的路径。
fallbackModulePath String optional 不支持web程序集时要使用的回退JavaScript模块的路径。
Returns:
一个承诺,当web工作人员加载并编译了web程序集模块并准备好处理任务时,将解析为结果。

isDestroyed()Boolean



如果此对象已销毁,则返回true;否则返回false。 如果此对象已被销毁,则不应使用它;调用除 isDestroyed将导致DeveloperError异常。
Returns:
如果此对象被销毁,则为True;否则为false。
See:

scheduleTask(parameters, transferableObjects)Promise.<Object>|undefined

计划由web辅助进程异步处理的任务。如果现在有更多 超过构造函数设置的最大值的任务将立即返回未定义。 否则,将返回一个promise,该承诺将在 完成了。
Name Type Description
parameters Object 将过帐到工作者的任何输入数据。
transferableObjects Array.<Object> optional 参数中包含的对象数组 转移给工人而不是复制。
Returns:
要么是一个承诺,一旦有结果,要么是未定义的 如果有太多的活动任务,
Example:
var taskProcessor = new Cesium.TaskProcessor('myWorkerName');
var promise = taskProcessor.scheduleTask({
    someParameter : true,
    another : 'hello'
});
if (!Cesium.defined(promise)) {
    // too many active tasks - try again later
} else {
    Cesium.when(promise, function(result) {
        // use the result of the task
    });
}