小程序worker机制onMessage接受消息反应速度很慢
使用官方的小程序worker机制代码片段 按道理说,只要在程序开始初期,创建一个worker,然后一直使用postMessage\onMessage就可以 但是第一次,创建worker后,postMessage\onMessage传递很快速 但是进行第二个postMessage\onMessage,onMessage迟迟接受不到输入信息 开始怀疑是SM4加密算法慢,但显然不是,还没到达SM4算法,因为onMessage接受成功后迟迟没有打印console.log("接受到的数据....") 代码如下: const SM4 = require('./sm4');
var count = 0
// 在 Worker 线程执行上下文会全局暴露一个 worker 对象,直接调用 worker.onMeesage/postMessage 即可
worker.onMessage(function (data) {
console.log("接收到的数据......")
var _t = this
console.log("==【【2】】【worker已接受】==id:" + data.id )
try {
let res = SM4.encrypt_sm4(data.message, data.key);
// var res = count++
var sendData = {
id:data.id,
ok: true,
msg:res
}
worker.postMessage(sendData);
console.log("==【【3】】【worker已发送回主线程】=====id:" + sendData.id)
} catch (error) {
var sendData = {
id:data.id,
ok: false,
msg:error
}
worker.postMessage(sendData);
}
})