python垃圾回收的機制過程
本文教程操作環(huán)境:windows7系統(tǒng)、Python3.9.1,DELLG3電腦。
1、步驟
(1)收集所有容器對象(list,dict,tuple,customClass,...),通過一個雙向鏈表進行引用;
(2)針對每一個容器對象,通過一個變量gc_refs來記錄當(dāng)前對應(yīng)的引用計數(shù);
(3)對于每個容器對象,找到它所引用的容器對象,并將這個容器對象的引用計數(shù)-1;
(4)經(jīng)過步驟3后,如果一個容器對象的引用計數(shù)為0,就代表這個對象可以被回收了,肯定是"循環(huán)引用"才導(dǎo)致它活到現(xiàn)在的。
2、垃圾回收的周期順序
0代"垃圾回收"一定次數(shù)后,觸發(fā)0~1代回收;
1代"垃圾回收"一定次數(shù)后,觸發(fā)0~2代回收。
以上就是python垃圾回收的機制過程,希望能對大家有所幫助。更多Python學(xué)習(xí)教程請關(guān)注IT培訓(xùn)機構(gòu):千鋒教育。