我在Python中遇到线程问题。内存不断起来(pythonw.exe)..它以+ - 20.000 kB开始,但一直上升,直到程序完成。任何人都知道如何解决这个问题?
class Threads(threading.Thread):
def run(self):
try:
HTML = urllib2.urlopen(//URL//).read()
except urllib2.HTTPError: pass
except: pass
def __Scan__():
Count = 0
while Count <10000:
Count = Count + 1
try:
Thread = Threads()
Thread.name = Count
Thread.start()
except:
Count = Count - 1
每个线程将打开一个URL,然后我将线程的编号存储在列表中。但我不认为这是记忆力上升的原因吗?有人可以帮忙吗?
THX
答案 0 :(得分:1)
内存的增加可能来自为每个新线程创建的堆栈空间。 Python中的线程(以及大多数其他语言)具有一定的资源开销。每次创建一个,都会为它分配一点内存。