当我运行我的应用程序时,对其进行一些操作,然后更改键盘输入语言(通过 alt+shift 或任务栏),我的 C#、.net-4 应用程序变得完全没有响应。意味着鼠标单击不会影响窗口并且窗口本身不能移动。话虽如此,没有显示沙漏,进程也不会进入“应用程序不响应”状态,即不会被操作系统关闭(Windows 7)。
当我(在不同的应用程序中)UI 线程和另一个线程之间出现死锁时,我曾经遇到过这样的问题。我可以向你保证,这里不是这种情况,我一直在从不同的角度调试这种现象,系统中没有线程处于 join whit 或睡眠状态。不仅如此,UI 主线程还在 UI 上(来自操作系统的正常消息除外)。
总结:
- 我的应用程序是在 .net 4 框架上运行的 C# 4 应用程序。
- 该应用程序在 Windows 7 上运行(我们没有可试用的 xp 计算机)。
- 当输入语言发生变化时,应用程序对用户没有响应,但 Windows 不会这样对待它,也不会尝试强制关闭它。
以前有人遇到过这样的问题吗?我真的可以在这个上使用一个起始方向......