har包里的worker如何在entry包内使用

har包里的worker如何在entry包内使用

HarmonyOS
2024-04-28 23:06:11
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
pfuchenlu

加载Library-HAR中Worker线程文件场景加载HAR中worker线程文件存在以下两种情况:

@标识路径加载形式:所有种类的模块加载本地HAR中的Worker线程文件,加载路径规则:@{moduleName}/ets/{relativePath}。

相对路径加载形式:本地HAR加载该包内的Worker线程文件,加载路径规则:创建Worker对象所在文件与Worker线程文件的相对路径。

需要注意的是:如果HAR包会被打包成三方包使用,则HAR包中使用Worker仅支持通过相对路径加载形式创建。​​

Demo如下:

// WorkerHandler.ets 
import { worker } from ‘@kit.ArkTS’ 
 
export class WorkerHandler { 
private static workerS = new worker.ThreadWorker("…/…/workers/MyWorker"); 
 
static postMsg(type: number, content: string): void { 
WorkerHandler.workerS.postMessage({‘type’: type, ‘content’: content}); 
WorkerHandler.workerS.onmessage = (): void => { 
// 接收Worker子线程的结果 
console.log(“myWorker: onMessage in har”); 
} 
} 
}
分享
微博
QQ
微信
回复
2024-04-29 15:42:20
相关问题
har不能用worker吗,taskpool可以吗
1855浏览 • 1回复 待解决
HarmonyOS 共享里面可以使用worker
492浏览 • 1回复 待解决
HarmonyOS HAR如何生成BuildProfile
86浏览 • 1回复 待解决
如何har编译脚本?
956浏览 • 1回复 待解决
如何在ArkTS中使用
546浏览 • 1回复 待解决
获取 har 相关信息
228浏览 • 1回复 待解决
HarmonyOS har报错
496浏览 • 1回复 待解决
HarmonyOS HAR HAP问题
179浏览 • 1回复 待解决