正在重新启动方法



我正在进行C#应用程序。我有一个验证数据库数据的主要过程。如果我有用户输入,计时器每100次检查一次。在我得到用户输入后,我的主进程继续(它在开始时等待用户输入)。在验证并做了多件事之后,该方法就完成了。问题是,我希望它能重新开始,等待下一点输入。

我想在过程的每一个可能的结尾再次调用该方法。我有一种感觉,这将创建一个资源密集的程序(不是最糟糕的事情,但没有坏习惯总比有几个好吧?)。

示例:

bool cont = false;
public void process() 
{    
    while (cont == false) {;}
    //Various sorting criteria that all end up with cont = false; process(), the userinput has been processed.
}
timer1 tick event 
{
    if (userinput) 
        cont = true;
}

由于您没有看到如何获得用户输入,所以我没有实现这个。但你的问题的主要逻辑是:

class MainClass
{ 
    public static void Main()
    {
        MyRecursiveFunction();
        AfterUserInput();
    }
    public static void MyRecursiveFunction()
    {
        if (userinput)
        { return; }
        // Waits 100 ticks to check again
        Thread.Sleep(new TimeSpan(100));
        MyRecursiveFunction();
    }
    public static void AfterUserInput()
    {
        // All that you need to do after the user input
    }
}

相关内容

最新更新