HarmonyOS 鸿蒙Next 跨线程的函数调用
HarmonyOS 鸿蒙Next 跨线程的函数调用
工程中,有一个Worker。在Worker内,运行了很多业务代码。
现在,需要再主线程中查询Worker内部的一个状态量。
现在能否以跨线程函数的方式来查询到worker线程里面的这个状态量。
比如
主线程执行函数
funcation getValue():Promise<number>{
this.workerInstance.doFuncation(“getValue”);
}
即可以拿到Worker线程内的 value:number = 1;这个变量值。
实际就是类似TaskPool的那套跨线程函数调用方式
现在,需要再主线程中查询Worker内部的一个状态量。
现在能否以跨线程函数的方式来查询到worker线程里面的这个状态量。
比如
主线程执行函数
funcation getValue():Promise<number>{
this.workerInstance.doFuncation(“getValue”);
}
即可以拿到Worker线程内的 value:number = 1;这个变量值。
实际就是类似TaskPool的那套跨线程函数调用方式
2 回复
跨线程传值可以参考这个demo,里面有收发过程:https://developer.huawei.com/consumer/cn/doc/harmonyos-references-V5/js-apis-worker-V5#stage模型
另外线程之间确实存在内存隔离,跨线程传输数据需要在这个范围内,参考:Sendable对象-线程间通信对象-并发线程间通信-ArkTS并发-ArkTS(方舟编程语言)-应用框架 - 华为HarmonyOS开发者 (huawei.com)
另外线程之间确实存在内存隔离,跨线程传输数据需要在这个范围内,参考:Sendable对象-线程间通信对象-并发线程间通信-ArkTS并发-ArkTS(方舟编程语言)-应用框架 - 华为HarmonyOS开发者 (huawei.com)