阅读量:0
在C# WinForm中实现异步编程有多种方式,其中常用的方式包括使用Task
类、async
和await
关键字以及使用BackgroundWorker
组件。
- 使用Task类:
private async void btnStart_Click(object sender, EventArgs e) { await Task.Run(() => { // 在后台线程执行耗时操作 Thread.Sleep(5000); }); MessageBox.Show("操作已完成"); }
- 使用async和await关键字:
private async void btnStart_Click(object sender, EventArgs e) { await Task.Delay(5000); // 模拟耗时操作 MessageBox.Show("操作已完成"); }
- 使用BackgroundWorker组件:
private void btnStart_Click(object sender, EventArgs e) { BackgroundWorker worker = new BackgroundWorker(); worker.WorkerReportsProgress = false; worker.WorkerSupportsCancellation = false; worker.DoWork += (sender, e) => { // 在后台线程执行耗时操作 Thread.Sleep(5000); }; worker.RunWorkerCompleted += (sender, e) => { MessageBox.Show("操作已完成"); }; worker.RunWorkerAsync(); }
以上是C# WinForm中实现异步编程的几种常用方式,开发者可以根据具体的需求选择合适的方式来处理异步操作。