.net - 当我的进程被终止时到底发生了什么?

标签 .net c++ windows

我有一个包含 native 代码和托管代码的混合进程,在 Windows Server 2003 上运行。

当我从进程资源管理器中终止我的进程时,它会进入 100% cpu 状态并在消失之前保持这种状态一段时间(有时甚至 10 分钟)。在此期间我无法“杀死”它或做任何其他事情。

当我通过进程资源管理器的 kill 进程杀死进程时,进程会发生什么异常? 我相信这不会调用任何析构函数,那么是什么导致了这种 CPU 使用率?

谢谢, 丹

最佳答案

显然,某些东西试图继续运行,这导致了您所看到的挂起/死锁情况。我可以尝试解释如何使用一些工具来尝试找出正在发生的事情,但我可能应该把你推迟到大师那里...... Tess - Lab on High CPU Hang

我能够使用她描述的方法找出我自己的应用程序的问题。

关于.net - 当我的进程被终止时到底发生了什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1582692/

相关文章:

c# - 使用 Parallel.ForEach 和 Task.Factory.StartNew 之间的主要区别是什么

c++ - 为动态分配的整数赋值

c++ - C/C++ 更好的写法?

javascript - 合并两个独立函数的结果?

.net - Azure 搜索 - 在单个搜索查询中查询所有索引

c# - Encoding.GetEncoding(1255) 和 Encoding.GetEncoding(1252) 有什么区别?

c++ - 如何通过Windows Defender SmartScreen保护?

windows - 产品不受支持(Visual Studio 2019)

Windows批处理循环遍历文件夹中的文件并解析文件名

c# - Topshelf - 找不到类型或命名空间名称 Topshelf