我的代碼正確編譯,但在收到警告稱爲C#Winform的:與異步長時間運行操作等待
這種異步方法缺乏「等待」運營商和將同步運行。 考慮使用'await'操作符來等待非阻塞API調用 或'await Task.Run(...)'在後臺線程上執行CPU綁定工作。
private async void Form1_Load(object sender, EventArgs e)
{
//await longRunningRoutine();
await Task.Run(async() =>
{
await longRunningRoutine(); ;
});
label1.Text = "hello test";
}
public async Task longRunningRoutine()
{
await Task.Delay(10000);
}
所以告訴我什麼是缺乏在我的代碼爲這我得到的警告? 如何解決這個問題。謝謝
'longRunningRoutine()'實際上做了什麼? –
用'await Task.Delay(10000);' – Equalsk
替換睡眠您的異步方法(longRunningRoutine)缺少等待操作符並將同步運行... – Evk