跳到主要内容
版本:3.x

Worker

方法​

onMessage​

监听主线程/Worker 线程向当前线程发送的消息的事件。

支持情况:

参考文档

(callback: OnMessageCallback) => void
参数类型说明
callbackOnMessageCallback主线程/Worker 线程向当前线程发送的消息的事件的回调函数

onProcessKilled​

监听 worker 线程被系统回收事件(当 iOS 系统资源紧张时,worker 线程存在被系统回收的可能,开发者可监听此事件并重新创建一个 worker)

支持情况:

参考文档

(callback: OnMessageCallback) => void
参数类型说明
callbackOnMessageCallbackworker 线程被系统回收事件的回调函数

postMessage​

向主线程/Worker 线程发送的消息。

支持情况:

参考文档

(message: TaroGeneral.IAnyObject) => void
参数类型说明
messageTaroGeneral.IAnyObject需要发送的消息,必须是一个可序列化的 JavaScript key-value 形式的对象。

示例代码​

worker 线程中

worker.postMessage({
msg: 'hello from worker'
})

主线程中

const worker = Taro.createWorker('workers/request/index.js')
worker.postMessage({
msg: 'hello from main'
})

terminate​

结束当前 Worker 线程。仅限在主线程 worker 对象上调用。

支持情况:

参考文档

() => void

参数​

OnMessageCallback​

(result: OnMessageCallbackResult) => void
参数类型
resultOnMessageCallbackResult

OnMessageCallbackResult​

参数类型说明
messageTaroGeneral.IAnyObject主线程/Worker 线程向当前线程发送的消息

API 支持度​

API微信小程序H5React NativeHarmonyASCF元服务
Worker.onMessage✔️
Worker.onProcessKilled✔️
Worker.postMessage✔️
Worker.terminate✔️