读书人

一行读nodejs(四)-插件(addons)

发布时间: 2012-09-19 13:43:53 作者: rapoo

一起读nodejs(四)----插件(addons)

本文是对nodejs0.8.8版本的api开发手册解读.nodejs网址

因本人没有c++编译环境,故下面代码没有做测试.


插件(Addons)

插件是动态被连接到共享的对象.他们可以提供一种c和c++类库结合的能力.Api(目前)还是想当复杂,包括几个类库的知识:

V8 javascript 引擎,一个c++类库.用于和javascript连接接口:创建对象,调用方法,等等.在弄的源码目录树中的dpes/v8/include/v8.h文件中做了说明,也可以在线查看.libuv,c的事件循环库.在任何时间,一个需要等待一个文件描述符变成可读的事件,等待一个定时器,或者等待一个信号来接受都需要使用libux.就是这样,如果你需要i/o操作,你就需要使用libux.internal node libraries,node核心库,大部分很重要的库都是node::ObjectWrap的类,方便有调用.others.可以在deps下查看其他可见的库. node总是静态的编译所有的依赖到可执行文件.当编译你的模块时,你不需要担心的连接到任何地方的libs.
Hello World 作为开始,让我们来制作一个小插件,下面的代码是和c++等价的js代码:
var addon = require('./build/Release/addon');var obj1 = addon.createObject(10);var obj2 = addon.createObject(20);var result = addon.add(obj1, obj2);console.log(result); // 30






读书人网 >JavaScript

热点推荐