0

我正在开发一个 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 中是否可行?

4

1 回答 1

1

明白了,您必须将值存储在 Persistent 而不是 Local

于 2014-06-08T23:22:50.367 回答