使用异步/等待模式进行任务处理,而不是将任务委托给Task.Run。
以下是代码示例:
// 错误示例:
private async void button1_Click(object sender, EventArgs e) { // 在主线程上使用Task.Run可能会引发死锁 await Task.Run(() => DoSomething()); }
// 正确示例:
private async void button1_Click(object sender, EventArgs e) { // 使用异步/等待模式进行任务处理 await DoSomethingAsync(); }
// 定义一个异步方法 public async Task DoSomethingAsync() { // 执行操作 await Task.Delay(1000); }
上一篇:避免在注释中使用格式化