易语言 api内存优化 貌似是个坑

来源:互联网 发布:java thread.sleep用法 编辑:程序博客网 时间:2024/06/08 17:07

内存优化命令

如果用API优化可用以下代码


.版本 2SetProcessWorkingSetSize (-1, -1, -1).版本 2.DLL命令 SetProcessWorkingSetSize, 整数型, "kernel32", "SetProcessWorkingSetSize", 公开    .参数 hProcess, 整数型    .参数 dwMinimumWorkingSetSize, 整数型    .参数 dwMaximumWorkingSetSize, 整数型


确实是自欺欺人的.

SetProcessWorkingSetSize如此使用参数,就是将程序所使用的物理内存尽量地向虚拟内存中压.

表面上看,物理内存占用确实是少了.

但是,一旦程序需要使用到已经被强行压到虚拟内存(也就是硬盘页面文件)中的内容时,又得重新从虚拟内存里读出来.

目前最好的硬盘速度比起内存来说那都至少是慢了几十上百倍,于是此招就会造成当前程序的运行效率严重下降,同时因为频繁读硬盘,占用了本来就不多的带宽,搞得整个系统的运行效率都下降了.

所以这个函数不可以频繁地调用,一般是在窗体最小化之类的用户暂时不需要与程序交互时调用一下.

不得不说,发明这种损招的人很有才!把MSDN看了一半就叼着跑了!

0 0
原创粉丝点击