我们有一个面向 .Net Framework 4.0 的 Windows 窗体应用程序。安装 .Net Framework 4.5 后,应用程序开始崩溃。我们将不得不调查崩溃,我们很可能不得不在我们这边解决问题。但是,在我们准备好使用 .Net 4.5 之前,我们可以打开一个设置来保持旧的行为吗?
2012 年 7 月 12 日更新: 我们发现导致应用程序崩溃的重大更改:给定 System.Threading.Timer,当使用已关闭的句柄调用 Dispose(WaitHandle) 时,计时器会尝试向 WaitHandle 发出信号引发异常。Timer 的 .Net 4.0 实现可以容忍这种情况,但 4.5 不能。
我们这边有一个错误;我们没有任何充分的理由给它一个封闭的句柄,所以我们会修复它......直到我们发现另一个错误......