首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >带有Javascript同步接口的异步操作

带有Javascript同步接口的异步操作
EN

Stack Overflow用户
提问于 2012-06-08 02:58:50
回答 3查看 540关注 0票数 0

所以我最近听说了很多关于node.js的事情。支持者似乎把它吹捧为耶稣的第二次降临。这激起了我的兴趣,我决定好好读一读。

我遇到了多个具有基准数字的来源,显然,它在处理大量并发请求方面做得很好。但是“回调”式的代码编写方式对我来说感觉非常“不自然”。经过一些研究,我使用了Eventlet,它允许我在编写看起来非常像同步的代码的同时进行异步操作(从而使我的工作效率更高)。

但Node.js似乎比Eventlet (http://codescience.wordpress.com/2011/09/05/non-blocking-io-node-js-and-pythons-eventlet)强大得多。我假设这是因为V8 JS引擎。有没有Java/Javascript产品可以让我在编写同步代码的同时执行异步操作,从而让我两全其美-开发人员的工作效率和JVM/V8的性能?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2012-06-08 03:02:22

Node.js支持可以支持异步等待语法,允许您使用同步代码运行异步操作

看看这个:

https://github.com/koush/node/wiki/%22async%22-support-in-node.js

票数 1
EN

Stack Overflow用户

发布于 2012-06-08 05:57:37

有几个项目旨在将这种风格引入Node.js。CoffeeScript的分支IcedCoffeeScript就是一个例子(但需要您编写CoffeeScript)。另一个是node-fibers

就我个人而言,我一直在试验IcedCoffeeScript (因为我已经在使用CoffeeScript了),它似乎工作得很好(参见我的before-and-after example),但是调试CoffeeScript有点痛苦,尽管下一个版本的CoffeeScript应该有源码映射支持,这有望使这件事变得更容易。

票数 1
EN

Stack Overflow用户

发布于 2012-07-04 01:19:04

你应该看看我的一个项目,它叫做sharpnr.js。这也使用了await-async语法,但它是一个简单的JavaScript库,可以在每个浏览器上运行。

该库目前处于测试阶段,但它很稳定,几乎支持所有语句(例如循环、切换、if),并且可以很好地与现有的库(如jQuery)协同工作。

语法与C#版本几乎相同:

代码语言:javascript
复制
var getAsync = async(function(url) {
  var result = await; $.get(url);
  $("#test").html(result);
});
getAsync("http://www.sharpnrjs.com");

jsfiddle上的工作示例。

您可以从github下载该库。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10938151

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档