node.js - Node.js 本机插件的不同实例之间的全局共享数据?
问题描述
我正在寻找使用 Node-API(更具体地说是使用 C++ 包装器模块node-addon-api
)创建本机插件。
我需要拥有将加载一次并在插件的不同实例之间共享的全局只读数据(例如,当插件由不同的 node.js 工作人员加载时)。
有推荐的方法吗?将数据存储在静态变量中是否安全?
解决方案
这取决于您的数据类型。如果您的数据不涉及任何 V8 数据类型(或 Napi:: 类型),那么,是的,它通常是安全的。
请注意不要共享已初始化的变量Node::Env
-这是要遵循的规则-如果需要Node::Env
,则无法共享。