小编pci*_*icz的帖子

被覆盖的变量到底什么时候被垃圾回收?

在某些迭代任务期间覆盖变量时,变量到底什么时候被垃圾收集?例如,假设我们有一个内存密集型函数,some_function(). 该函数还返回一个大对象data

def some_function(x):
    ...
    return data
Run Code Online (Sandbox Code Playgroud)

如果在某些迭代任务期间调用此函数,例如

for x in some_iterable:
    output = some_function(x)
Run Code Online (Sandbox Code Playgroud)

新变量output一旦被some_function()调用就会被垃圾收集吗?或者它只在返回新值时释放内存?我只关心内核中释放的内存,而不一定是系统中释放的内存(所以我可能错误地使用了术语“垃圾收集”)。

python garbage-collection

5
推荐指数
1
解决办法
1457
查看次数

标签 统计

garbage-collection ×1

python ×1