问题描述:C# WinForm 使用Thread类创建一个线程,线程内部写有循环,使用Invoke更新UI(PictureBox,DataGridView)。当项目输出成应用程序后,在不同机子上循环固定执行不同次数后UI会卡死;在VS上调试不会。
解决方式:使用ManualResetEventSlim对象的Set、Reset、Wait进行线程阻塞,使用BeginInvoke代替Invoke。
引发问题原因:不明,有大佬知道希望可以教一下,谢谢!
问题描述:C# WinForm 使用Thread类创建一个线程,线程内部写有循环,使用Invoke更新UI(PictureBox,DataGridView)。当项目输出成应用程序后,在不同机子上循环固定执行不同次数后UI会卡死;在VS上调试不会。
解决方式:使用ManualResetEventSlim对象的Set、Reset、Wait进行线程阻塞,使用BeginInvoke代替Invoke。
引发问题原因:不明,有大佬知道希望可以教一下,谢谢!