python是如何进行内存管理的( 二 )


这两个次数即上面get_threshold()返回的(700, 10, 10)返回的两个10 。也就是说,每10次0代垃圾回收,会配合1次1代的垃圾回收;而每10次1代的垃圾回收,才会有1次的2代垃圾回收
同样可以用set_threshold()来调整,比如对2代对象进行更频繁的扫描

python是如何进行内存管理的

文章插图
 
3)内存池机制
Python中有分为大内存和小内存:(256K为界限分大小内存)
1、大内存使用malloc进行分配
2、小内存使用内存池进行分配
python中的内存管理机制都有两套实现,一套是针对小对象,就是大小小于256K时,pymalloc会在内存池中申请内存空间;当大于256K时,则会直接执行系统的malloc的行为来申请内存空间




推荐阅读