什么是流程句柄以及我们可以通过任务资源管理器中的“句柄计数”属性了解正在运行的流程?
进程句柄是一个整数值,用于标识
Windows的进程. Win32 API将它们称为HANDLE;窗口的句柄称为HWND,并处理模块HMODULE.
进程内的线程有一个线程句柄,文件和其他资源(如注册表键)也有句柄.
您在任务管理器中看到的句柄计数为“@L_502_1@”.实际上,这是此进程已打开的所有句柄的总和.
如果您没有释放资源的句柄,其他人可能无法访问它 – 这就是您有时无法删除文件的原因,因为Windows声称它正在使用中(请查看this article on handle leaks and Process Explorer).
此外,各种句柄都有一个进程限制. Here is an example.
通常,如果您打开句柄而不关闭它们,则类似于泄漏内存.你应该弄清楚发生了什么并修复它.有一个很好的CodeProject article on handle leaks.