timmy gist felülvizsgálása 9 months ago. Revízióhoz ugrás
1 file changed, 20 insertions
gc_example.py(fájl létrehozva)
| @@ -0,0 +1,20 @@ | |||
| 1 | + | import gc | |
| 2 | + | ||
| 3 | + | class CircularReference: | |
| 4 | + | def __init__(self): | |
| 5 | + | self.ref = self # 建立循環引用 | |
| 6 | + | ||
| 7 | + | # 建立一個有循環引用的物件 | |
| 8 | + | obj = CircularReference() | |
| 9 | + | ||
| 10 | + | # 檢查物件是否被垃圾回收 | |
| 11 | + | print(f"物件存在於 gc 可達物件列表中: {gc.is_tracked(obj)}") | |
| 12 | + | ||
| 13 | + | # 刪除變數(但仍有循環引用,GC 不會立即回收) | |
| 14 | + | del obj | |
| 15 | + | ||
| 16 | + | # 強制執行垃圾回收 | |
| 17 | + | gc.collect() | |
| 18 | + | ||
| 19 | + | # 確認循環引用的物件是否被回收 | |
| 20 | + | print("強制執行垃圾回收後,未被釋放的物件數量:", gc.collect()) | |
Újabb
Régebbi