我正在做一个Windows窗体,希望每30秒发生一次审计任务。此审核实质上是检查远程计算机上的一系列服务,并将状态报告回richtextbox。
目前我在无尽的后台线程中运行并使用调用程序更新主窗体中的richtextbox。
这是最佳做法吗?如果我在我的主窗体中制作了一个无限循环来阻止我的任何按钮工作,那么正确吗?
我只是好奇每次我想创建定期审核检查时我必须创建一个新线程来检查状态或文件或者你有什么?
编辑:我进一步研究了Timer类并决定使用System Timer,因为事实证明,使用更长的函数会更好。谢谢你指点我正确的方向。
答案 0 :(得分:4)
您应该查看Windows窗体Timer class。您不希望主窗体中有循环。最好使用计时器来触发可以在另一个线程上异步处理的事件。
答案 1 :(得分:1)
(我假设这是一个winform应用程序)
调用主线程是要走的路。但是使用timer而不是无限循环呢?它为您提供更多控制。并且定时器函数将在它自己的线程上执行。
最好让后续工作在后台线程上执行,这样主线程就可以使用UI了。