欢迎!请查阅关于页面获取更多关于如何使用本网站的信息。
当 {{Delay}} 被实现时,{{f}} 被设置为 {{nil}}。我们可以避免调用 {{truth_}} 和 {{not}} 并直接与 {{nil}} 进行比较,从而实现轻微的性能提升。
在 {{script/noderepljs}} 中,这导致以下结果:
(simple-benchmark [x (delay 1)] @x 1e9) (simple-benchmark [x (delay 1)] (realized? x) 1e9) (simple-benchmark [x (doto (delay 1) deref)] (realized? x) 1e9)
分别提高了 6%、11% 和 9% 的速度。
评论来自:mfikes
在所有引擎的 {{:advanced}} 选项下,票据描述中的 3 个基准测试产生以下加速数值:
` V8: 1.18, 1.15, 1.09SpiderMonkey: 1.08, 1.04, 1.19JavaScriptCore: 1.70, 0.86, 0.93
`
Nashorn: 1.05, 1.15, 1.14 ChakraCore: 1.21, 0.52, 0.81
CLJS-1975.patch 不再适用
CLJS-1975-2.patch 重新基准化和通过 CI。