繁体   English   中英

JavaScript中的堆和本机内存分配:如何管理?

[英]Heap and Native memory allocation in JavaScript: how managed?

JavaScript具有堆(垃圾收集)内存和本机(类型数组,DOM元素)内存。

问题:两者之间是否有平衡,以便如果我想拥有很多类型化数组,它可以工作,但只是减少了堆空间?

通常的模型是分配内存,这样本机可以从顶部开始,而从堆底部开始。 并且,当需要更多内存时,将增加内存,并且本机和堆再次移至顶部/底部,并在其间增加内存。 或在两者之间权衡取舍的类似方法。

我意识到这是一个奇怪的问题,但是我正在编写大型程序,试图通过类型化数组来最大程度地减少内存使用。

谢谢!

如果您试图最小化内存使用并且您的代码适合于类型化数组,则类型化数组使用的内存应少于常规数组。 所有这些内存都来自同一个地方,因此您对堆与本机的问题对我而言真的没有任何意义。 用于类型化数组的内存越多,则其他所有使用内存的内存将越少。 优化的最佳选择是仅使用较少的内存,而不用担心使用该内存是什么样的事情,因为内存就是内存,无论它是带类型的数组还是其中有巨大的字符串。

与常规数组一样,类型化数组也将被垃圾回收。 类型化的数组具有更高的内存效率,仅是因为它们为数组中的每个元素使用较少的存储,而不是因为它们使用了不同类型的内存。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM