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