我想让一个函数在我的Winform C#项目中持续运行,直到窗体窗口关闭

本文关键字:运行 窗口 窗体 项目 一个 Winform 我的 函数 | 更新日期: 2023-09-27 18:21:19

我想让一个函数在我的Winform C#项目中持续运行,直到窗体窗口关闭。我不想把它放在很长的计时器里,然后一遍又一遍地调用它。我该怎么办?

我需要这样的东西来不断验证表单是打开还是关闭:

while(this.close() == false)
{
 my_func();
}

上面的代码当然是错误的,但我写它是为了让你知道我想要什么。

我想让一个函数在我的Winform C#项目中持续运行,直到窗体窗口关闭

请记住,您可以在表单上使用FormClosed和FormClosed事件。

处理其中一个表格的效率将是持续轮询表格状态的10亿倍。。。

最后我提出了这个想法,因为它不太消耗CPU,而且运行效率很高,尽管我试图避免计时器,但它似乎是一个最简单的选择:

public Form1()
{
    InitializeComponent();
    timer.Start();
}
private void timer1_Tick(object sender, EventArgs e)
{
   my_func();
}

我们可以将计时器的间隔属性设置为一个小值,比如200毫秒或其他值,因此my_func()几乎连续运行,直到窗体关闭。