【发布时间】:2013-12-27 19:25:08
【问题描述】:
我希望“A 类”保持而不是完成对所有计数的循环,并等待“B 类”完成使用来自“A 类”的结果集。 “Class B”是一个 wxPython 对话框,它使用在“Class A”中计算的变量并进行一些计算。但是“A 类”完成了 for 循环并打开了等于 for 循环总数的对话框数。
class A(object):
count = 3
for i in range(count):
"""do something"""
dlg = B()
class B(object):
"""do something"""
如何在for循环的每次迭代中保持它与wxPython对话框一一配合?
【问题讨论】:
-
使用信号量,这将锁定 A 直到 B 提出它。 docs.python.org/2.3/lib/semaphore-examples.html
-
既然他在谈论 GUI,那么在这里使用信号量或其他锁定可能不是一个好主意。他需要使用一些东西将控制权返回给 GUI 的主循环。我从未使用过 wxPython,但我使用过的 GUI 框架都有一个像 .run() 这样的阻塞对话框调用,可以为您执行此操作。
标签: python python-2.7 wxpython