【问题标题】:Profiling async functions in Javascript在 Javascript 中分析异步函数
【发布时间】:2018-04-05 07:11:46
【问题描述】:

我有一个复杂的 async/await 函数流,我想对其进行优化。

在调试同步工作流时,使用 Chrome 开发工具的内置分析器很实用,但跟踪微任务触发器以恢复 Promise 是一个困难的工作流,并且提供的概述很少。

不同的想法:我正在考虑利用 babel 生成的代码来收集在 promise 解析的不同阶段花费的时间,或者可能使用未编译的代码并覆盖全局 Promise 对象以获得性能洞察。

如何有效地调试 async/await 函数的性能?

【问题讨论】:

    标签: javascript performance promise async-await profiling


    【解决方案1】:

    在这里没有得到任何回应后,我提出了自己的解决方案。这很粗糙,但工作。我通过覆盖全局 Promise 对象来做到这一点。这仅适用于 babel 转译的异步函数,因为本机异步显然不尊重覆盖的 window.promise。通过使用Error().stack(感谢this question)进行堆栈检查,我可以确定谁在创建该承诺。

    结果可以在here找到,你可以使用npm i promise-performance

    【讨论】:

      猜你喜欢
      • 2017-08-01
      • 1970-01-01
      • 2020-03-17
      • 1970-01-01
      • 2018-09-19
      • 1970-01-01
      • 2022-01-01
      • 2019-04-18
      • 2021-05-24
      相关资源
      最近更新 更多