6

What information can I obtain from the performance.memory object in Chrome?
What do these numbers mean? (are they in kb's or characters)
What can I learn from these numbers?

Example values of performance.memory

MemoryInfo {
  jsHeapSizeLimit: 793000000,
  usedJSHeapSize: 10000000,
  totalJSHeapSize: 31200000
}
4

2 回答 2

8

我可以从 Chrome 中的 performance.memory 对象中获取哪些信息?

属性名称应该非常具有描述性。

这些数字是什么意思?(它们是 kb 还是字符)

文档状态:

这些值被量化为不会将私人信息暴露给攻击者。

请参阅WebKit 补丁了解如何公开量化值。这些测试特别有助于解释它是如何工作的。

我可以从这些数字中学到什么?

您可以识别内存管理的问题。请参阅http://www.html5rocks.com/en/tutorials/memory/effectivemanagement/了解performance.memoryAPI 在 gmail 中的使用方式。

于 2014-01-20T16:19:40.903 回答
3

相关的API 文档没有说明,但是根据您共享的数字以及我在我的机器上看到的数据来判断,这些值是以字节为单位的。

快速回顾一下 Bergi 链接到的代码——关于被量化的值——似乎支持这一点——例如float sizeOfNextBucket = 10000000.0; // First bucket size is roughly 10M.

量化MemoryInfo属性主要用于监控和确定操作对内存的精确影响。上述链接代码中的注释很好地解释了这一点,我认为:

86 // We quantize the sizes to make it more difficult for an attacker to see precise
87 // impact of operations on memory. The values are used for performance tuning,
88 // and hence don't need to be as refined when the value is large, so we threshold
89 // at a list of exponentially separated buckets.

基本上这些值会随着它们变大而变得不那么精确,但对于监控内存使用情况仍然足够精确。

于 2014-01-20T16:28:27.080 回答