定义

官方文档: http//erlang.org/doc/tutorial/nif.html

在 Erlang / OTP R13B03 中引入 NIF 作为实验特征。目的是允许从 Erlang 代码中调用 C 代码。

NIF 是用 C 而不是 Erlang 实现的,但它们看起来像 Erlang 代码范围内的任何其他函数,因为它们属于包含发生的模块。NIF 库在编译时链接并在运行时加载。

因为 NIF 库是动态链接到模拟器进程的,所以它们很快,但也很危险,因为在 NIF 中崩溃也会使仿真器失效。