4
我有一个正在被两个函数操作的类。一个函数创建小部件列表并将其写入到类:python迭代器和线程安全
def updateWidgets(self):
widgets = self.generateWidgetList()
self.widgets = widgets
以某种方式在小部件等功能的交易:
def workOnWidgets(self):
for widget in self.widgets:
self.workOnWidget(widget)
每个功能运行在它自己的线程。问题是,如果updateWidgets()
线程在workOnWidgets()
线程运行时执行,会发生什么情况?
我假设作为for...in
循环的一部分创建的迭代器将保留对旧的 self.widgets对象的某种引用?所以我会完成旧列表的迭代......但我很想知道确切的事情。
很好的答案和很好的例子。谢谢! – 2010-04-30 22:09:43