Tag: synchronizationcontext

为什么我会打扰使用Task.ConfigureAwait(continueOnCapturedContext:false);

考虑下面的Windows窗体的代码: private async void UpdateUIControlClicked(object sender, EventArgs e) { this.txtUIControl.Text = "I will be updated after 2nd await – i hope!"; await Task.Delay(5000).ConfigureAwait(continueOnCapturedContext: false); this.txtUIControl.Text = "I am updated now."; } 这里在第三行抛出exception,因为在等待代码在非UI线程上执行之后。 ConfigureAwait(false)有用吗?