在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中實現異步編程的幾種常用方式,開發者可以根據具體的需求選擇合適的方式來處理異步操作。