OpenHarmony开发者论坛

标题: _attribute_((constructor))注册的Napi模块什么时候被调用触发模块注册? [打印本页]

作者: jychengxuyuan    时间: 2023-11-7 10:46
标题: _attribute_((constructor))注册的Napi模块什么时候被调用触发模块注册?
_attribute_((constructor))注册的Napi模块什么时候被调用触发模块注册?
作者: 深开鸿_王皓    时间: 2023-11-7 11:33
attribute((constructor)) 是一个编译时 attribute,用于指定一个类的构造函数。当程序编译时,编译器会根据这个 attribute 标记来执行一些特殊的操作,对于使用此方式注册的NAPI模块,实际的注册时机是模块首次被引用使用,即运行时,此时注册表的模块信息会被修改,否则若是注册的模块无法被触发调用,则模块不会被注册。望采纳!
作者: pandafactory    时间: 2023-11-28 10:48
1、ts侧引入native插件时,类似如下代码,则会触发native子系统dlopen对应libxxx.so的动态库导入
  1. import libxxx from 'libxxx.so'
复制代码

2、_attribute_((constructor))函数属性表示对应动态库被导入时,会被系统执行调用,此时就会对NAPI模块进行注册调用




欢迎光临 OpenHarmony开发者论坛 (https://forums.openharmony.cn/) Powered by Discuz! X3.5