在WinForms应用程序中,将CheckForIllegalCrossThreadCalls设置为FALSE以避免调试期间的交叉线程错误是否安全?
CheckForIllegalCrossThreadCalls = false;
答案 0 :(得分:31)
不,那不安全。检查线程错误的Winforms代码非常重要,导致的问题非常难以诊断。最大的问题是它不会导致一致的失败,你的应用程序会随机出错,死锁或每月只能崩溃一次。或者从来没有,直到你做了一个小的改变。或者只有在特定用户的计算机上,您才会责怪用户而不是您的代码。
CheckForIllegalCrossThreadCalls属性首先存在的唯一原因是保持.NET 2.0并与不执行此线程安全测试的错误.NET 1.x程序兼容。错误的向后兼容性;-P