Skip to content

该示例用来验证 WeakSet 为弱引用模式。

弱引用是指 WeakSet 引用的对象不会影响垃圾回收。

当变量无法在全局范围内通过索引树查找到时,该内存就会被回收. 在实际验证 WeakSet 时虽然变量引用已被删除,但由于垃圾回收不可控,导致无法验证 WeakSet 为弱引用.

采用 node 环境可以验证此逻辑。 切换到该目录运行 npm run gc

  1. 创建一个弱引用
  2. 立即删除引用对象指针
  3. 每隔 2s 打印 weakset 仍然有值
  4. 等待 5s 手动触发 gc
  5. 此时再打印 weakset 已被清除