TypeScript 调查异步文件IO

jtw3ybtb  于 4个月前  发布在  TypeScript
关注(0)|答案(4)|浏览(54)

@amcasey有一些关于通过使我们的读/写调用异步来加快IO时间的想法。这个问题跟踪了这个想法,并且应该是记录调查结果的地方。
相关的问题:#1857 , #16607 , #29100

byqmnocz

byqmnocz1#

我花了大约一周的时间,但还没有完成异步变化的层叠,所以我没有可验证的性能数据。然而,@weswigham 和 @ahejlsberg 建议,创建一个非常简单的返回承诺函数的开销是不合理的高。我认为我们将在这个主题上打个桩,并寻找其他加快I/O的方法。

pgccezyw

pgccezyw2#

级联 async : 不好。 async 被限制在一个顶级 await : 好。使用 Promise.allawait 同时拉取许多异步读取:非常好。
v8 team 在异步函数上执行过一次优化( and then reverted it? )-但它们的比较“基准”是原始承诺。在常见使用模式下, async / await 应该能够实现接近正常调用性能(没有异步操作 -> 没有分配完整的承诺 -> 立即返回执行),但还没有人投资于这一点。:(
或者我的简短测试被 this v8 perf bug 污染了。不能确定。

fnx2tebb

fnx2tebb3#

对于构建模式,我相信我们可以实现文件写入并仅将其级联回 Backbone.js 。文件读取更紧密地集成在一起,我们需要更加明确地说明何时实际发生懒惰读取(即在读取之前进行异步,在读取之后进行同步)。我们几乎肯定需要放弃一些懒惰性才能实现这一点,很难说我们是否会占上风。

axzmvihb

axzmvihb4#

我正在处理这个问题,但不要期待在3.8版本中修复它——更新里程碑以反映这一点。

相关问题