在用CloseHandle关闭Win32文件后,它能否继续处理?

问题描述

我正在尝试调试一台远程计算机上发生的死锁问题。我没有设法在本地计算机上为它创建可复制的案例,并且在远程计算机上也没有100%的情况发生。

我的主要问题是:一个文件关闭后,文件句柄是否可以保留并仍然可见?


代码相当复杂,但是基本上看起来像这样:

CFile* file = new CFile;
// ...do stuff with the file
delete file

据我从https://docs.microsoft.com/en-us/cpp/mfc/closing-files?view=msvc-160得知,delete应该确保文件对象关闭其句柄(实际上是调用CloseHandle)。

我已验证(由于观察到其他副作用)该程序必须经过delete调用,并且与此同时,在查看SysInternals {{1}时,该文件仍在30分钟后打开}。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)