参见英文答案 >
Nodejs: What does `process.binding` mean?2个
我在fs.js的顶部看到有一个process.binding(‘fs’).
我在fs.js的顶部看到有一个process.binding(‘fs’).
https://github.com/nodejs/node/blob/master/lib/fs.js#L10:
const binding = process.binding('fs');
然后,它被用作:
binding.open(pathModule._makeLong(path),stringToFlags(flag),0o666,req);
(在https://github.com/nodejs/node/blob/master/lib/fs.js#L303-L306)
我的问题是:
> process.binding(‘fs’)是什么意思?
>这里有什么(我们已经在fs.js)?
>我在哪里可以找到binding.open的源代码?是Javascript代码还是c / c代码?
解决方法
> process.binding()是节点用来获取对各种核心C绑定的引用的内部API.
> process.binding(‘fs’)中的’fs’是对fs模块的C绑定(节点源树中的
>如上所述,process.binding()引用了C绑定,因此在这种情况下,binding.open()导出为 here并定义为 here.
> process.binding(‘fs’)中的’fs’是对fs模块的C绑定(节点源树中的
src/node_file.cc
)的引用.
>如上所述,process.binding()引用了C绑定,因此在这种情况下,binding.open()导出为 here并定义为 here.