C# async 周期性调用方法

标签 c# multithreading asynchronous timer

应用程序的主线程正在做一些工作。

还有一个计时器,它应该每 10 分钟调用一些应该异步运行的方法。

你能给我一个如何组织这个的好例子吗?

最佳答案

我不建议使用带有循环和休眠的显式线程。这是不好的做法,而且很丑陋。有用于此目的的定时器类:

如果这不是 GUI 应用程序,那么您可以使用 System.Threading.Timer定期在不同的线程上执行代码。

如果这是 WinForms/WPF 应用程序,请查看 System.Windows.Forms.TimerSystem.Windows.Threading.DispatcherTimer分别。这些很方便,因为它们在 GUI 线程上执行代码,因此不需要显式的 Invoke 调用。

链接还包含每个链接的示例。

关于C# async 周期性调用方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11191451/

相关文章:

c# - 我该怎么做 float :right in Windows Form Application?

java - 如何杀死等待中的线程?

c# - 如何将resx资源文件变成字典

c# - 我怎样才能得到一个文件的路径?

javascript - 如何通过单击另一个页面的链接按钮调用按钮的单击事件而无需在 c# ASP.NET 中回发

java - 异步 Servlet 与同步 Servlet

asynchronous - 如何使用异步函数异步监听 Firestore 中的值?

c++ - 通过const引用传递shared_ptr是线程安全的吗?

c# - WP7-对网络通信、跨线程访问和连续传递感到困惑

flutter - 无法在dart中的then函数中将值分配给外部函数变量