如何从native层的子线程同步调用ArkTS方法并获取返回值?
如题,我在napi的代码中创建了一个线程,希望调用ArkTS的方法,并能够同步获取ArkTS方法的返回值,有什么办法吗?我现在有了解到napi_create_threadsafe_function,但这个似乎是异步的,无法同步获取返回值。2.回调函数(CallJs)里面把结果赋值给promise,3.子线程获取返回值后,继续处理后续业务。1.调用线程安全函数时传promise,,欢迎开发者前往论坛
·
本问答帖原创发布在华为开发者联盟社区 ,欢迎开发者前往论坛提问交流。
问题描述:
如题,我在napi的代码中创建了一个线程,希望调用ArkTS的方法,并能够同步获取ArkTS方法的返回值,有什么办法吗?
我现在有了解到napi_create_threadsafe_function,但这个似乎是异步的,无法同步获取返回值
解决方案:
可以使用以下方案:
1.调用线程安全函数时传promise,
2.回调函数(CallJs)里面把结果赋值给promise,
3.子线程获取返回值后,继续处理后续业务。
参考demo、详细解决方案以及相关的讨论,请点击原帖查看:
如何从native层的子线程同步调用ArkTs方法,并获取返回值-华为开发者问答 | 华为开发者联盟 (huawei.com)
更多推荐




所有评论(0)