Python是否对这些工作人员进行垃圾收集,我该如何检查?

时间:2016-06-04 08:58:17

标签: python python-3.x garbage-collection python-multithreading

我正在使用Anaconda的Python 3.3:

Python 3.3.5 |Continuum Analytics, Inc.| (default, Jun  4 2015, 15:22:11) 
Type "copyright", "credits" or "license" for more information.

假设我有一些Python工作线程。他们使用大量内存。代码中的其他地方没有引用它们。完成后,Python会自动垃圾收集它们吗?我有办法检查吗?

在下面的示例中,我创建了5个工作线程。它们不存储在变量中。他们完成后会被垃圾收集吗?

import threading
import time

class Worker(threading.Thread):

    def __init__(self):
        super(Worker, self).__init__()
        self.var = 'A LARGE OBJECT'

    def run(self):

        for i in range(3):
            print('hello %i'%i)
            time.sleep(1)


for i in range(5):
    Worker().start()

0 个答案:

没有答案