应用程序的主线程正在做一些工作。
还有一个计时器,它应该每 10 分钟调用一些应该异步运行的方法。
你能给我一个如何组织这个的好例子吗?
最佳答案
我不建议使用带有循环和休眠的显式线程。这是不好的做法,而且很丑陋。有用于此目的的定时器类:
如果这不是 GUI 应用程序,那么您可以使用 System.Threading.Timer定期在不同的线程上执行代码。
如果这是 WinForms/WPF 应用程序,请查看 System.Windows.Forms.Timer和 System.Windows.Threading.DispatcherTimer分别。这些很方便,因为它们在 GUI 线程上执行代码,因此不需要显式的 Invoke
调用。
链接还包含每个链接的示例。
关于C# async 周期性调用方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11191451/