python GC 与java GC机制对比表格
python GCjava GC
包含算法引用计数;标记清除;分代收集引用计数;标记清除;分代收集核心算法引用计数分代收集&标记清除触发机制显示调用gc.collect(); 当前threshold超过闸值显示调用system.gc();使用jvm规划内存超过闸值;GC触发后是否立即回收是否GC是否导致stop the world否是
算法说明
引用计数:当指向对象指针增加,引用计数+1;反之-1
标记清除:为解决循环引用不能很好的回收内存的问题。从root节点遍历,标记所有可以访问的变量,释放达到不了的变量/对象/内存
分代收集:创建的对象未被GC扫描回收过的新生代,经过GC多次回收仍存活下来会被标记为次生代/二代、老年代/三代。以不同频率进行扫描、内存回收
特性执行相关语句
python GC相关语句: gc.disable() : gc关闭 gc.collect() : gc启动
java GC相关语句: system.gc() : 启动GC