NAPI 通过 napi_wrap 创建的对象似乎没有被销毁
在 C++ 当中使用下面的方法包装了一个 C++ 的对象:
// 用法1:napi_wrap不需要接收创建的napi_ref,最后一个参数传递nullptr,创建的napi_ref是弱引用,由系统管理,不需要用户手动释放napi_wrap(env, jsobject, nativeObject, cb, nullptr, nullptr);
按照文档的说明,这个对象会在 GC 的时候自动销毁,并且通过调用 cb 来完成 C++ 对象的析构。
现在的问题是,发现 cb 没有被调用,导致 C++ 对象一直没有析构。
HarmonyOS
赞
收藏 0
回答 1
待解决
相关问题
HarmonyOS napi callback是否会失效或被提前销毁
237浏览 • 1回复 待解决
如何通过 napi 获取一个 C++ map 类型的对象
1779浏览 • 1回复 待解决
napi常见用法:class对象绑定
981浏览 • 1回复 待解决
Native如何通过napi获取ArrayBuffer?
3459浏览 • 1回复 待解决
napi调用C++网络请求逻辑,创建socket失败咋回事?napi方法能否使用async?
295浏览 • 1回复 待解决
JS线程通过napi创建的C++线程的处理结果,如何返回JS线程
1965浏览 • 1回复 待解决
有没有新的napi的一些demo?
312浏览 • 3回复 待解决
如何将通过napi创建的C++线程的处理结果传递回JS线程?
421浏览 • 1回复 待解决
NAPI 的 napi_throw_error 不会导致应用崩溃
950浏览 • 1回复 待解决
HarmonyOS主线程的napi_ref是否可以被worker线程使用?
347浏览 • 1回复 待解决
napi_get_arraybuffer_info 和 napi_create_arraybuffer 的使用
1815浏览 • 1回复 待解决
HarmonyOS router.back后方法回调没有被销毁
222浏览 • 1回复 待解决
HarmonyOS napi C++侧怎么通过一个“ClassName” 初始化一个ArkTS的对象
256浏览 • 1回复 待解决
HarmonyOS napi_call_threadsafe_function没有block调用线程
490浏览 • 1回复 待解决
如何使通过NAPI读取到的ArkTS字符串不被截断?
730浏览 • 1回复 待解决
HarmonyOS napi_env对象是否可以在native层长期持有,作为在某些情况下调用napi的接口时使用
281浏览 • 1回复 待解决
通过NAPI编译后生成的abc文件存放路径在哪儿
1915浏览 • 1回复 待解决
HarmonyOS NAPI调用ArkTS的静态方法
426浏览 • 1回复 待解决
Napi回调ArkTS,Native侧日志通过监听回调到JS侧
947浏览 • 1回复 待解决
NAPI介绍(九) - gdb调试
530浏览 • 1回复 待解决
HarmonyOS NAPI开发相关问题
295浏览 • 1回复 待解决
需要提供napi反调ets的例子
847浏览 • 1回复 待解决
HarmonyOS napi如何传递一个对象,然后C++侧调用这个对象内部的回调方法
328浏览 • 1回复 待解决
有什么简单的线程创建方法么?文档里的worker似乎没法用
224浏览 • 1回复 待解决
退到后台和js中主动触发GC,都会 调用对象的析构方法;
您可以尝试以下步骤触发GC验证触发GC的操作如下:1,2均可触发
1、应用切后台且满足内存增长条件,可触发Compress GC
2、js代码中手动调用ArkTools.forceFullGC(),可触发Compress GC
代码如下: