我正在开发一个Node.js扩展,我想将一个javascript函数传递给它,稍后可以从c ++代码调用它。如果我将javascript函数存储在我的包装器类中并在传入它时正确调用它工作正常,但是如果我存储它并稍后尝试调用它会出现以下错误:
node: /home/david/.node-gyp/0.10.28/src/node_object_wrap.h:61: static T*
node::ObjectWrap::Unwrap(v8::Handle<v8::Object>) [with T = Queue]: Assertion
`handle->InternalFieldCount() > 0' failed.
我正在尝试完成像
这样的事情var callback = require('my_addon');
callback.setCallback(function(){ console.log("test"); } // works fine if i call the function fron setCallback
callback.callCallback(); // gives that error if i try calling it from here
有没有人知道Node.js中是否可以这样做?
答案 0 :(得分:1)
知道了,你必须将值存储在Persistent而不是Local
中