C#.NET WinForm 多个子Task(子线程)嵌套 Task.WaitAll 阻塞UI线程 (界面)
情况:
DoIt()方法内,开了2个Task 执行任务,子任务中会更新UI。
DoIt() 是同步(UI线程)。
DoIt()部分代码:
DoIt2 方法内会更新UI ,InvokeInserLbxMsg(curMsg); 。
结果导致 DoIt2 更新UI失败,并阻塞了UI线程 。
解决方法:
DoIt 方法内2个Task.WaitAll,换成 ContinueWith:
重点: UI线程的方法(同步),不要用Task.WaitAll。
Original: https://www.cnblogs.com/runliuv/p/16267704.html
Author: runliuv
Title: C#.NET WinForm 多个子Task嵌套 Task.WaitAll 阻塞UI线程
原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/539916/
转载文章受原作者版权保护。转载请注明原作者出处!