Mar*_*rio 6 javascript garbage-collection
我不太了解JavaScript垃圾收集器,只是它试图管理引用,以便可以定期从内存中清除未引用的对象.如果语言实施者可行的话,我正在思考一些我认为可以提高性能的东西.
它会像这样.在文件中添加一行:
"no gc";
Run Code Online (Sandbox Code Playgroud)
这与use strict设置类似.它会将文件中定义的所有内容标记为不进行垃圾回收.我认为这将在jQuery和下划线等库中使用.所有辅助方法都将被标记并存储在不由GC管理的单独的内存区域中.
虽然我知道这可能最终会保留那些从未使用过的东西; 它至少会将它与定期的GC过程隔离开来.因此,虽然我们可能会吞噬一些额外的内存,但至少可以减轻GC处理的负担.
我为这个建议的天真而道歉,因为我从未实施过GC.我只是想知道这个想法是否可行,或者JavaScript是否已经以某种方式做到了这一点.
如果你想将它们保留为缓存,那么你就有全局范围。
在浏览器中全局范围是window,
因此考虑如果你不希望对象 X 永远不会被垃圾收集那么你可以简单地写
window.nogc = X;
Run Code Online (Sandbox Code Playgroud)
由于 window 是全局范围的,永远不会被垃圾收集,因此它的子引用也不会被垃圾收集,直到我们明确地创建它。
| 归档时间: |
|
| 查看次数: |
113 次 |
| 最近记录: |