当前位置: 首页 > news >正文

网站建设难点分析上海开艺设计集团有限公司

网站建设难点分析,上海开艺设计集团有限公司,网站后台关键词链接怎样做,基层医疗卫生机构本土化人才培养Nodejs在IO方面拥有极强的能力#xff0c;但是对CPU密集型任务#xff0c;会有不足#xff0c;为了填补这方面的缺点#xff0c;Nodejs支持c/c为其编写原生nodejs插件#xff0c;补充这方面的能力。 Nodejs c扩展 c编写的代码能够被编译成一个动态链接库(dll),可以被nod… Nodejs在IO方面拥有极强的能力但是对CPU密集型任务会有不足为了填补这方面的缺点Nodejs支持c/c为其编写原生nodejs插件补充这方面的能力。 Nodejs c扩展 c编写的代码能够被编译成一个动态链接库(dll),可以被nodejs require引入使用后缀是.node .node文件的原理就是(window dll) (Mac dylib) (Linux so) c扩展编写语法 NAN(Native Abstractions for Nodejs) 一次编写到处编译 因为 Nodejs和V8都更新的很快所有每个版本的方法名也不一样对我们开发造成了很大的问题例如 0.50版本 Echo(const Prototypeproto) 3.00版本 Echo(ObjectPrototype proto) NAN的就是一堆宏判断判断各种版本的API用来实现兼容所以他会到处编译 N-API(node-api) 无需重新编译 基于C的API c 封装 node-addon-api N-API 是一个更现代的选择它提供了一个稳定的、跨版本的 API使得你的插件可以在不同版本的 Node.js 上运行而无需修改代码。这大大简化了编写和维护插件的过程。 对于 C你可以使用 node-addon-api这是 N-API 的一个封装提供了一个更易于使用的 C API。这将使你的代码更易于阅读和维护。 使用场景 使用C编写的Nodejs库如node-sass node-jieba 等CPU密集型应用代码保护 需要安装的依赖 npm install --global --production windows-build-tools #管理员运行 #如果安装过python 以及c开发软件就不需要装这个了 npm install node-gyp -g #全局安装 npm install node-addon-api -D #装到项目里小案例获取设备的宽高 index.cpp #define NAPI_VERSION 3 //指定addon版本 #define NAPI_CPP_EXCEPTIONS //启用 Node.js N-API 中的 C 异常支持 #include napi.h //addon API #include windows.h //windwos APINapi::Value GetScreenSize(const Napi::CallbackInfo info) {Napi::Env env info.Env(); //指定环境int cx GetSystemMetrics(SM_CXSCREEN); //获取设备宽int cy GetSystemMetrics(SM_CYSCREEN); //获取设备高Napi::Object result Napi::Object::New(env); //创建一个对象result.Set(width, cx);result.Set(height, cy);return result; //返回对象 }Napi::Object Init(Napi::Env env, Napi::Object exports) {//抛出一个函数 getScreenSize exports.Set(getScreenSize, Napi::Function::New(env, GetScreenSize));return exports; } //addon固定语法 必须抛出这个方法 NODE_API_MODULE(NODE_GYP_MODULE_NAME, Init)binding.gyp {targets:[{target_name: cpu, //名称sources: [ cpu.cpp ], //指定文件include_dirs: [!(node -p \require(node-addon-api).include\) //引入addon]}] }index.js const addon require(./build/Release/cpu.node) console.log(addon.getScreenSize())node-gyp configure #生成配置文件 node-gyp build #打包addon
http://www.pierceye.com/news/140592/

相关文章:

  • wordpress文章站主题如何删除自己建的网站
  • 徐州网站建设哪家好薇深圳找工作的网站
  • 局域网站点建设方案东莞企业营销型网站
  • 中国光大国际建设工程公司网站自己开店
  • 手机建站程序昆山设计公司
  • 网站泛解析中国新闻社是国企还是私企
  • dw做静态网站手机app制作视频教程
  • 惠州做网站公司网页游戏排行榜前十名歌
  • 会ps的如何做网站高等教材建筑电气久久建筑网
  • 甘肃住房城乡建设厅网站wordpress风格化页面
  • 起名网站建设免费找素材软件
  • 网站基本信息设置链接搜索
  • 广州海珠网站开发营销策划
  • 医院网站制作公司专门做spa的网站
  • 企业网页制作与网站设计网站必须天天更新吗
  • 乌苏市城乡建设局网站外贸网网站建设
  • html5网站开发实例书籍凡科建站代理
  • 与建设部网站网站注册登录页面设计
  • 企业网站推广计划免费最新如何建设网站教程视频
  • 17一起做网站普宁站好看个人网页模板
  • 民治营销网站专业网站建设价格最优
  • 免费的html网站做柜子喜欢上哪些网站看
  • 网站没备案怎么做加速现代装修风格三室两厅效果图
  • 互助平台网站建设网上商城怎么购物
  • 百度知道山东网站建设建设网站成本预算
  • 人人做免费网站网站建站是 什么
  • 以背景做网站视频为单位网站建设实施方案
  • 简洁大气企业网站模板西安个人做网站
  • 做一个网站需要到哪里做辽宁同鑫建设网站
  • 开发网站监控推荐扬中市建设局网站