JavaScript自评测API

2020-11-11 00:49:01

一直以来,网页开发者很难理解他们的应用程序中的JavaScript在真实用户设备上的各种情况下是如何运行的。他们不得不使用性能不佳的性能分析钩子来检测代码,这些钩子可能会减慢页面执行速度,而且无法有效地收集堆栈样本。这就是建议的原生JavaScript自评测API可能非常有用的地方。

此API允许Web开发人员在页面加载和他们的JavaScript中的用户交互过程中高效地识别代价高昂的热点。API还可以让你做一些事情,比如将CPU预算分配给页面上实现的各个功能,找到在后台执行并浪费电力的低优先级代码,或者只是做一些不必要的客户端工作。

我对这个API感到很兴奋,因为它允许您以相对较低的开销收集一些非常丰富的执行数据进行分析。它还为您提供了一种配置样本分析器的一流方法,以便您可以设置在会话期间收集样本的频率。下面是一个注释代码--实际使用的API示例:

//开始新的性能分析会话//提供sampleInterval(会话获取样本的时间段)const profiler=等待性能。Profile({sampleInterval:10});//执行一些代价高昂的工作PerformSomeTask();//停止探查器并返回捕获的跟踪常量TRACE=等待探查器。Stop();//将跟踪发送到端点上报sendTraceToAnalytics(TRACE);

你可以在crbug或ChromeStatus上跟踪Chrome的实现进度,如果你已经打开了实验性的Web平台特性标志,那么你可以在Chrome Canary中试用这个实现。