我想查看nodeJS源代码中process.binding()
语句中提到的文件的源代码,在stackoverflow上看到了类似的问题,但大多数都回答了fs等特定情况。
我想要解释,我应该能够找到process.bindings()
中提到的任何文件。
答案 0 :(得分:0)
因为这个问题已经存在很长时间了,所以我决定再次尝试寻找答案,并在网上找到一个很好的演示文稿。
总而言之,process.bindings()将javascript对象与C ++对象绑定在一起,该对象公开了要从javascript执行的C ++函数,从本质上讲,它围绕C ++函数创建了一个JavaScript包装器,以使其可从NodeJS中使用。
要查找哪个C ++函数绑定到哪个javascript函数,可以在NodeJs source tree处挖掘NodeJS源代码树。名称很容易映射到核心模块名称并寻找签名env->SetMethod(target, "<modulename>", <C++ function name>);
示例:env->SetMethod(target, "stat", Stat);