Worker
Worker 实例,主线程中可通过 qq.createWorker 接口获取,worker 线程中可通过全局变量 worker
获取。
方法
Worker.postMessage(Object message)
向主线程/Worker 线程发送的消息。
Worker.terminate()
结束当前 Worker 线程。仅限在主线程 worker 对象上调用。
Worker.onMessage(function callback)
监听主线程/Worker 线程向当前线程发送的消息的事件。
示例代码
运行以下代码需先进行基础配置,详细请查阅 多线程 文档了解基础知识和配置方法。
const worker = qq.createWorker('workers/request/index.js') // 文件名指定 worker 的入口文件路径,绝对路径
worker.onMessage(function (res) {
console.log(res)
})
worker.postMessage({
msg: 'hello worker'
})
worker.terminate()
.onMessage
Worker.onMessage(function callback)
监听主线程/Worker 线程向当前线程发送的消息的事件。
参数
function callback
主线程/Worker 线程向当前线程发送的消息的事件的回调函数
参数
Object res
属性 | 类型 | 说明 |
---|---|---|
message | Object | 主线程/Worker 线程向当前线程发送的消息 |
.postMessage
Worker.postMessage(Object message)
向主线程/Worker 线程发送的消息。
参数
Object message
需要发送的消息,必须是一个可序列化的 JavaScript key-value 形式的对象。
示例代码
worker 线程中
worker.postMessage({
msg: 'hello from worker'
})
主线程中
const worker = qq.createWorker('workers/request/index.js')
worker.postMessage({
msg: 'hello from main'
})
.terminate
Worker.terminate()
结束当前 Worker 线程。仅限在主线程 worker 对象上调用。