HarmonyOS Native Module 接口的多线程调用问题
按照官方Native C++ Module示例,在cpp/types目录的Index.d.ts文件声明函数,在.cpp源实现函数,对此有两个疑问:
1.import编译好的so,在ts侧中调用add函数时,会进入native侧的实现Add函数中,在native侧的Add函数中通过napi_get_cb_info这个调用可以获取到JS的对象指针,请问,如果在不同线程,不同ts文件中调用add函数时,最终native侧获取到的JS对象指针是否为同一个?即多线程场景下调用模块内函数的表现是怎样的?
2.在官方示例中展示了[Native与ArkTS对象绑定]:https://developer.huawei.com/consumer/cn/doc/harmonyos-guides/use-napi-object-wrap-0000001813416132,native项目是纯c实现的,无法切换到c语言,即无法使用C Class,是否有其他方案可以实现 [Native与ArkTS对象绑定] 这样的功能?
HarmonyOS
赞
收藏 0
回答 1
待解决
相关问题
HarmonyOS napi_env 调用Native, Native 内启用多线程,但是env不支持多线程访问, 怎么处理?
1254浏览 • 1回复 待解决
HarmonyOS关于多线程的问题
1397浏览 • 1回复 待解决
HarmonyOS 多线程锁问题
1636浏览 • 1回复 待解决
HarmonyOS Native C函数中有多线程交互,用napi调用会闪退
1483浏览 • 1回复 待解决
HarmonyOS 多线程并发相关问题
1207浏览 • 1回复 待解决
HarmonyOS 多线程数据互通问题
910浏览 • 1回复 待解决
HarmonyOS 多线程安全问题验证
1137浏览 • 1回复 待解决
多线程调用 OH_Drawing_CreateFontCollection 崩溃
1869浏览 • 1回复 待解决
HarmonyOS NEXT 如何实现Native线程调用ArkTS线程?
718浏览 • 1回复 待解决
HarmonyOS业务场景相关多线程的应用问题
1565浏览 • 1回复 待解决
HarmonyOS中的多线程和Android的多线程有何区别?
1102浏览 • 0回复 待解决
HarmonyOS 多线程传递不可sendable对象问题
1068浏览 • 1回复 待解决
HarmonyOS ArkTS调用Native接口机制咨询
1417浏览 • 1回复 待解决
HarmonyOS多线程使用?
1010浏览 • 0回复 待解决
HarmonyOS 关于native子线程问题
766浏览 • 1回复 待解决
HarmonyOS是否支持多线程?
936浏览 • 0回复 待解决
HarmonyOS 有关多线程的资料文档
962浏览 • 1回复 待解决
#鸿蒙通关秘籍#鸿蒙应用中如何使用UI主线程调用多线程方法?
1271浏览 • 1回复 待解决
HarmonyOS 多线程写法限制
1040浏览 • 1回复 待解决
HarmonyOS native子线程请求网络同步的问题
713浏览 • 1回复 待解决
HarmonyOS 关于多线程并发的使用
1088浏览 • 1回复 待解决
#鸿蒙通关秘籍#为什么在HarmonyOS Native侧使用多线程执行任务?
1125浏览 • 1回复 待解决
什么是系统的多线程模型
1305浏览 • 1回复 待解决
HarmonyOS 多线程共享数据方法的疑惑
1190浏览 • 1回复 待解决
问题1:首先js的对象是不允许跨线程使用的。如果在同线程,不同ts文件中调用native函数时,每次传入的napi_callback_info都是重新创建出来的,主要还是看js传入的逻辑,如果JS一个变量在两处传,那么是同一个。如果只是值相等,但是是两个变量,两处拿到的napi_callback_info就不同。
问题2:可以使用napi_define_class来建立JS构造函数和成员函数与C方法的关联,不一定需要c++类。此外napi_wrap绑定的是void*,所有数据都支持。