Windows 进程在调用过程中保留内存

Windows 进程在调用过程中保留内存

我遇到了一个奇怪的现象。我在 Windows cmd shell 上启动了一个长时间运行的进程(XP 和 Win7 上的行为相同)。该进程从文件系统读取信息(文件、目录结构等),并将其存储在进程内存中,然后响应来自其他进程的请求。当我使用 Ctrl-C/Ctrl-Break 终止进程并重新启动它时,文件系统信息立即可供进程使用,并且它不必从磁盘重新读取它。似乎旧进程只是被换出,现在又被换入了。- 这怎么可能?有没有办法确保旧进程内存已经消失?

无效的:

我误解了我的应用程序的行为,并且查看了错误的地方。信息实际上是在调用之间通过(其他)文件传递的。- 抱歉造成了噪音。

答案1

事实是Windows NT 有一个文件缓存,无需访问光盘即可重新读取文件和目录,不应该很奇怪,更别说是个问题了。☺

相关内容