Worker是与主线程并行的独立线程。主要作用是为应用程序提供一个多线程的运行环境,可满足应用程序在执行过程中与主线程分离,在后台线程中运行一个脚本操作耗时操作,极大避免类似于计算密集型或高延迟的任务阻塞主线程的运行。
创建文件作为worker环境,并且在buildjson5文件中创建声明一个配置
主线程:
import worker from '@ohos.worker';//全局
private wk = new worker.ThreadWorker('entry/ets/workers/w1.ts')
Button('发送消息给work 1').onClick(()=>{
this.wk.postMessage('22222222')
})
副线程:
import worker from '@ohos.worker';
const parent = worker.workerPort;
//接收主线程发送的消息
parent.onmessage=function(message){
console.log('on message'+JSON.stringify(message) );
parent.postMessage('收到')
}