geo*_*kal 5 .net wpf visual-studio
如果我使用
Application.Current.Dispatcher.BeginInvoke(new Action(() => { /*UI code here*/ }));
Run Code Online (Sandbox Code Playgroud)
在 WPF 项目中,Visual Studio 2019 向我发出警告 VSTHRD001:
等待 JoinableTaskFactory.SwitchToMainThreadAsync() 切换到 UI 线程,而不是可能死锁或需要指定优先级的 API。
我该如何实施这个建议?
看这里。您应该将调用替换BeginInvoke为:
Microsoft.VisualStudio.Shell.ThreadHelper.JoinableTaskFactory.Run(async delegate {
await ThreadHelper.JoinableTaskFactory.SwitchToMainThreadAsync();
/*UI code here*/
});
Run Code Online (Sandbox Code Playgroud)