我应该继续使用这样的线程还是应该使用多处理?我正试图通过按下按钮来切换while循环。
主题:
class workingthread(threading.Thread):
def __init__(self):
threading.Thread.__init__(self)
def run(self):
while 1:
chat = skype.CreateChatWith(name)
chat.SendMessage(message)
t.sleep(timeou)
启动主题:
def this(self,event):
t = workingthread()
t.start()
答案 0 :(得分:0)
你的问题有点不清楚。我正在努力关注“我正试图通过按钮按下来切换while循环”部分。根据我的理解,你希望一直有线程活动(通过我认为不会杀死线程的活动),但你只想偶尔执行while循环体。最简单的解决方案是实现一个布尔变量并像这样扩展workingthread
:
class workingthread(threading.Thread):
def __init__(self):
threading.Thread.__init__(self)
self.doit = True
def run(self):
while 1:
if doit:
# if the execution of both statements is desired
chat = skype.CreateChatWith(name)
chat.SendMessage(message)
# sleep in both cases
t.sleep(timeou)
现在您可以使用按钮事件(您正在使用的任何UI工具包),将方法绑定到它,并可以切换doit
的{{1}} - 变量。取决于workingthread
,是否执行while循环体。