{"id":6048,"date":"2017-10-22T02:09:43","date_gmt":"2017-10-21T18:09:43","guid":{"rendered":"https:\/\/sdeno.com\/?p=6048"},"modified":"2019-06-23T00:17:04","modified_gmt":"2019-06-22T16:17:04","slug":"napa-js-%e5%be%ae%e8%bd%af%e5%bc%80%e6%ba%90%e7%9a%84%e5%a4%9a%e7%ba%bf%e7%a8%8b","status":"publish","type":"post","link":"https:\/\/sdeno.com\/?p=6048","title":{"rendered":"Napa.js \u2014\u2014 \u5fae\u8f6f\u5f00\u6e90\u7684\u591a\u7ebf\u7a0b"},"content":{"rendered":"<p>node.js \u591a\u7ebf\u7a0b\u5e93<\/p>\n<p>\u6211\u4eec\u90fd\u77e5\u9053node.js\u662f\u5355\u7ebf\u7a0b\uff0c\u4e5f\u5c31\u7b97\u670d\u52a1\u5668\u6709\u591a\u4e2acpu\u4e5f\u53ea\u80fd\u4f7f\u7528\u5230\u4e00\u4e2a\uff0c\u867d\u7136\u53ef\u4ee5\u5f02\u6b65\u6267\u884c\uff0c\u53ef\u4ee5\u628a\u76f8\u5bf9\u6bd4\u8f83\u8017\u65f6\u7684\u7a0b\u5e8f\u653e\u5230\u540e\u9762\u8fd0\u884c\uff0c\u4f46\u59cb\u7ec8\u8fd8\u662f\u9700\u8981\u6392\u961f\u53bb\u6267\u884c\u3002\u8fd9\u6837\u5982\u679c\u540c\u65f6\u6267\u884c\u5927\u91cf\u8017\u65f6\u7684\u7a0b\u5e8f\uff0c\u90a3\u5c31\u96be\u514d\u4e0d\u4e86\u4f1a\u5835\u585e\u3002<\/p>\n<p>\u5176\u5b9e\u95ee\u9898\u5f88\u7b80\u5355\uff0c\u6211\u4eec\u5982\u4f55\u53bb\u5145\u5206\u5229\u7528\u670d\u52a1\u5668\u7684\u591a\u6838cpu\uff0c\u8ba9node.js\u5b9e\u73b0\u591a\u7ebf\u7a0b\u3002\u5206\u522b\u5c06\u8017\u65f6\u7684\u7a0b\u5e8f\u5e73\u5747\u5206\u914d\u5230\u6bcf\u4e2acpu\u4e0a\u8fd0\u884c\uff0c\u8fd9\u6837\u5c31\u5927\u5927\u63d0\u9ad8\u6548\u679c\uff0c\u81f3\u5c11\u8981\u4fdd\u4f4f\u4e3b\u7ebf\u7a0b\u4e0d\u8981\u6302\u3002<\/p>\n<p>\u8fd9\u91cc\u63a8\u8350\u4e00\u4e2a\u5fae\u8f6f\u5f00\u53d1\u7684\u591a\u7ebf\u7a0b\u6a21\u5757\uff1aNapa.js<\/p>\n<p>\u672c\u4eba\u5728mac\u4e0a\u8fd0\u884c\u6210\u529f\uff0c\u5b89\u88c5\u6b65\u9aa4\uff1a<\/p>\n<p>&nbsp;<\/p>\n<p>1\uff0c\u5b89\u88c5\u4f9d\u8d56<\/p>\n<pre>npm install -g cmake-js<\/pre>\n<p>\u66f4\u591a\u7cfb\u7edf\u4f9d\u8d56\u53c2\u770b\uff1a<a href=\"https:\/\/github.com\/Microsoft\/napajs\/wiki\/build-napa.js\">https:\/\/github.com\/Microsoft\/napajs\/wiki\/build-napa.js<\/a><\/p>\n<p>&nbsp;<\/p>\n<p>2\uff0c\u5b89\u88c5napajs<\/p>\n<pre>npm install napajs<\/pre>\n<p><a href=\"https:\/\/github.com\/Microsoft\/napajs\">https:\/\/github.com\/Microsoft\/napajs<\/a><\/p>\n<p>&nbsp;<\/p>\n<p>\u6848\u4f8b\uff1a<\/p>\n<pre><span class=\"pl-k\">var<\/span> napa <span class=\"pl-k\">=<\/span> <span class=\"pl-c1\">require<\/span>(<span class=\"pl-s\"><span class=\"pl-pds\">'<\/span>napajs<span class=\"pl-pds\">'<\/span><\/span>);\r\n<span class=\"pl-k\">var<\/span> zone1 <span class=\"pl-k\">=<\/span> <span class=\"pl-smi\">napa<\/span>.<span class=\"pl-smi\">zone<\/span>.<span class=\"pl-en\">create<\/span>(<span class=\"pl-s\"><span class=\"pl-pds\">'<\/span>zone1<span class=\"pl-pds\">'<\/span><\/span>, { workers<span class=\"pl-k\">:<\/span> <span class=\"pl-c1\">4<\/span> });\r\n\r\n<span class=\"pl-c\">\/\/ Broadcast code to all 4 workers in 'zone1'.<\/span>\r\n<span class=\"pl-smi\">zone1<\/span>.<span class=\"pl-en\">broadcast<\/span>(<span class=\"pl-s\"><span class=\"pl-pds\">'<\/span>console.log(\"hello world\");<span class=\"pl-pds\">'<\/span><\/span>);\r\n\r\n<span class=\"pl-c\">\/\/ Execute an anonymous function in any worker thread in 'zone1'.<\/span>\r\n<span class=\"pl-smi\">zone1<\/span>.<span class=\"pl-en\">execute<\/span>(\r\n    (<span class=\"pl-smi\">text<\/span>) <span class=\"pl-k\">=&gt;<\/span> text, \r\n    [<span class=\"pl-s\"><span class=\"pl-pds\">'<\/span>hello napa<span class=\"pl-pds\">'<\/span><\/span>])\r\n    .<span class=\"pl-en\">then<\/span>((<span class=\"pl-smi\">result<\/span>) <span class=\"pl-k\">=&gt;<\/span> {\r\n        <span class=\"pl-en\">console<\/span>.<span class=\"pl-c1\">log<\/span>(<span class=\"pl-smi\">result<\/span>.<span class=\"pl-c1\">value<\/span>);\r\n    });<\/pre>\n<p>&nbsp;<\/p>\n<p>\u6267\u884c\u7684\u6548\u679c\u662f\uff1a<\/p>\n<figure class=\"mdx-lazyload-container\" style=\"max-width:324px\"><div style=\"padding-top:24.382716049383%\"><\/div><div class=\"mdx-img-loading-sp mdui-valign\"><div><div class=\"mdui-spinner\"><\/div><\/div><\/div><img width=\"324\" height=\"79\" class=\"alignnone wp-image-6051 lazyload\" title=\"Napa.js \u2014\u2014 \u5fae\u8f6f\u5f00\u6e90\u7684\u591a\u7ebf\u7a0b\" src=\"data:image\/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==\" data-src=\"https:\/\/sdeno.com\/wp-content\/uploads\/2017\/10\/WX20171022-021129@2x.png\" alt=\"https:\/\/sdeno.com\/wp-content\/uploads\/2017\/10\/WX20171022-021129@2x.png\"><\/figure>\n<p><audio style=\"display: none;\" controls=\"controls\"><\/audio><\/p>\n","protected":false},"excerpt":{"rendered":"<p>node.js \u591a\u7ebf\u7a0b\u5e93 \u6211\u4eec\u90fd\u77e5\u9053node.js\u662f\u5355\u7ebf\u7a0b\uff0c\u4e5f\u5c31\u7b97\u670d\u52a1\u5668\u6709\u591a\u4e2acpu\u4e5f\u53ea\u80fd\u4f7f\u7528\u5230\u4e00\u4e2a\uff0c\u867d\u7136\u53ef\u4ee5 [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[11],"tags":[],"class_list":["post-6048","post","type-post","status-publish","format-standard","hentry","category-11"],"_links":{"self":[{"href":"https:\/\/sdeno.com\/index.php?rest_route=\/wp\/v2\/posts\/6048","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/sdeno.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/sdeno.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/sdeno.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/sdeno.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=6048"}],"version-history":[{"count":0,"href":"https:\/\/sdeno.com\/index.php?rest_route=\/wp\/v2\/posts\/6048\/revisions"}],"wp:attachment":[{"href":"https:\/\/sdeno.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=6048"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/sdeno.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=6048"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/sdeno.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=6048"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}