Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/363.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
python会自动删除对象吗?_Python - Fatal编程技术网

python会自动删除对象吗?

python会自动删除对象吗?,python,Python,我有一门课,像: class MyClass: def __init__(self, data): self.client1 = ThirdPartyLib1.Client(data['a']) self.client2 = ThirdPartyLib2.Client(data['b']) self.client3 = MyClass2.Client(data['c']) def handle(self):

我有一门课,像:

class MyClass:
    def __init__(self, data):
        self.client1   = ThirdPartyLib1.Client(data['a'])
        self.client2   = ThirdPartyLib2.Client(data['b'])
        self.client3   = MyClass2.Client(data['c'])

    def handle(self):
        #self.client1.xxx()
        #....
和主要代码:

    while not STOP:
        data = SomeLib.get()

        client = MyClass(data)
        client.handle()
所以我的问题是客户端是否会自动删除?有内存泄漏吗

我是否需要在MyClass中创建
\uuu del\uu
并调用

del self.client1
del self.client2
del self.client3
?


或者我需要在
client.handle()
之后添加
del client

否,没有内存泄漏,Python是一种内存管理语言
\uuu del\uu
del x
没有直接关系,而
del x
所做的只是从本地命名空间中删除名称。如果一个对象仍然在其他地方被引用,它将仍然是活动的。CPython使用引用计数,因此当对象引用计数达到0时,它会立即被回收,但这是一个实现细节,您不必显式调用
del client
将其从内存或堆栈中删除。当程序或执行代码停止运行特定的
客户端
实例时,
handle()
和传递给
MyClass
的任何其他数据将从堆栈中删除。@FishingCode您确切指的是什么堆栈?@erip yeah,特别是在CPython中,当引用计数达到0时,一个对象会立即被回收,因此它看起来就像是在做什么,但是在Jython中,它取决于JVM垃圾收集器。这是对堆的引用。不,没有内存泄漏,Python是一个内存管理语言
\uuu del\uu
del x
没有直接关系,而
del x
所做的只是从本地命名空间中删除名称。如果一个对象仍然在其他地方被引用,它将仍然是活动的。CPython使用引用计数,因此当对象引用计数达到0时,它会立即被回收,但这是一个实现细节,您不必显式调用
del client
将其从内存或堆栈中删除。当程序或执行代码停止运行特定的
客户端
实例时,
handle()
和传递给
MyClass
的任何其他数据将从堆栈中删除。@FishingCode您确切指的是什么堆栈?@erip yeah,特别是在CPython中,当引用计数达到0时,一个对象会立即被回收,因此它看起来就像是在做什么,但是在Jython中,它取决于JVM垃圾收集器。这是对堆的引用。