最小化程序时,占用内存为何会减少?

billy_zh 2003-05-10 10:37:41
我开发一些数据库程序,运行后在大概会占用8-14M的内存,

当最小化时,内存占用就会减少到很小(至少在Windows任务管理器看起来减少了),即使再还原也比最小化前的占用内存要少,显然程序释放了一些内存。

我的问题是这些内存是如何释放的?能不能由我自己来释放而不是通过最小化
-还原来释放。

附:
我曾经仔细看过源代码,好像与Delphi的内存管理器(getmem.inc)无关。

开发环境:Windows2000Adv + Delphi7.
数据存取:ADO + SQLServer2000
...全文
174 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
lyguo 2003-05-10
  • 打赏
  • 举报
回复
好象是由操作系统存贮管理。由操作系统来决定是换入还是换出吧。
sysu 2003-05-10
  • 打赏
  • 举报
回复
最小化时操作系统会把应用程序占用的内存交换到磁盘的交换文件上,所以减少了。
DelphiBoy2003 2003-05-10
  • 打赏
  • 举报
回复
程序占用内存会减少,但是过一会就会达到标准的占用了.
这个内容你应该看微软的一本叫做什么来着的一本书.就是微软公司里面的很多华人写的那一本,里面有讲到
longlonger 2003-05-10
  • 打赏
  • 举报
回复
这个我的理解是,在最小化或者后台执行的情况下,都会把你的程序的执行优先级降低,这时候,内存管理就会把一些文件(页面)写到磁盘上(或者说虚拟内存上),待到重新调出的时候,一部分回到物理内存执行,领一部分还滞留在磁盘上。
你可以看一下页面交换的帖子,以及内存管理方面的章节。
ahjoe 2003-05-10
  • 打赏
  • 举报
回复
但为什么恢复后占用内存还是比原来少。我在XP下,切换用户再进去,程序占用内存也会减少。

5,386

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧