动态更新python标签颜色和值内存饥饿

时间:2017-10-01 01:15:37

标签: python tkinter labels

我有一个包含数百个要更新的标签的接口 - 来自套接字TCP的字符串的颜色和值。我发现,经过一段时间20-30天,该程序正在吃内存GB。所以我把这段简单的代码用来模拟同样的事情,而且这个简单的代码仍然在活动监视器(mac)中每秒使用内存0.1Mb。对于mac,linux或windows也是如此。我试图从几天后跟踪问题,我无法理解为什么。我在root上放了10毫秒来加速。最初在20-30天内我的程序从1000ms的数据更新标签的速度非常慢。它做同样的事情,使用self.after更新简单的标签....作为python的新手请理解问题的质量。

还是有其他方法可以连续更新数百个标签而不会增加内存消耗吗?

from Tkinter import *
import datetime

root = Tk()

lab = Label(root)
lab.pack()

def clock():
    time = datetime.datetime.now().strftime("Time: %H:%M:%S") # just for example, could be a variable that is changing rapidly
    lab.config(text=time)
    #lab['text'] = time
    root.after(10, clock) # run and show label updates

# run first time
clock()

root.mainloop()

0 个答案:

没有答案