winform 上需要挂载一个 类死循环的程序,让它一直在运行。
MainForm 中通过Tab控件加载不同的子窗体。
MainForm中使用Task 对这个任务进行操作。
Task.Run(()=>{//执行操作});
操作在运行期间,MainForm 变的异常的卡顿,Tab切换的过程假死。
操作不运行期间,MainForm 正常。Tab切换流畅。
使用Task 已经为异步操作,为什么会造成MainForm的卡顿?
有啥方案能解决这个问题?
其实不会出现你说的这种问题,除非你的TASK里面有频繁操作窗体的操作。
应该看看你的代码,这样说是没用的
已经找到原因,异步线程中使用了一个在MainForm 中声明的一个全局私有变量,不在使用后,恢复正常