Python:如何从外部

时间:2017-09-01 23:19:18

标签: python function exception functional-programming execution

我有以下问题:

我有一个带有两个按钮的GUI:“运行”和“停止”。

当我按下按钮“运行”时,将执行功能 a

如何通过按下“停止”按钮来停止执行,不用任何 if语句?在函数 a 中,有大量的数学计算,所以如果我只是将函数 a 中的代码与循环边界并且每个循环检查一次,如果按钮按下“停止”,这将花费太多时间。

我想立即停止执行 a 功能,而不是在整个计算结束时停止执行。因此,例如,使用try / catch将函数内部的代码边界化,但是在函数外部引发异常,那么我可以在每次需要时停止执行函数,直到达到if语句为止。我已经尝试用线程解决问题,但它不起作用,因为我不知道,如何启动一个线程,将一些参数提交到Custom线程类。

这里有一个小Pythoncode,应该显示我的意思:

class GUI():
    def __init__(self):
        #Initialization of Button "Run",connect Button "Run" to function a
        #Initialization of Button "Stop",connect Button "Stop" to function b

    def a(self):
        """calculation of a ton of mathematical stuff, can take MORE THAN 
           FIVE MINUTES to be finished, could be grouped in
           individual functions to border the function-calls with try/catch,
           but would be inefficient and inelegant"""
        pass

    def b(self):
        """Should stop the execution of function a immediately """

0 个答案:

没有答案