【问题标题】:Node js, passing a javascript function into an add on and storing itNode js,将一个javascript函数传递给一个插件并存储它
【发布时间】:2014-06-08 22:46:15
【问题描述】:

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

【问题讨论】:

    标签: node.js v8 embedded-v8


    【解决方案1】:

    知道了,您必须将值存储在 Persistent 而不是 Local

    【讨论】:

    • 如何持久存储对象?
    猜你喜欢
    • 2018-12-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-08-28
    • 1970-01-01
    • 1970-01-01
    • 2019-07-25
    相关资源
    最近更新 更多