当前位置:C++技术网 > 资讯 > 内存清理问题,怎么解决

内存清理问题,怎么解决

更新时间:2016-09-18 19:19:40浏览次数:1+次

在360里有个加速,当点了加速后,会释放掉当前正在运行的软件中没用的内存.当我的软件运行时间较长时,因为是多页浏览器,占用内存越来越多.当我点360加速时,发现内存瞬间从100M降到2M,他是怎么实现的呢?有代码最好,谢谢!


C++技术网解答:

    清理进程的内存,使用API函数EmptyWorkingSet,每一个进程在运行的时候,都会分配一些内存,存放缓存数据,久而久之,内存都被占用了。使用API函数EmptyWorkingSet会让这些被进程缓存的内存都被释放掉。这样进程需要的时候又重新申请内存来缓存数据。

    360不仅会清理内存,而且会干掉一些进程。一般来说,这些被进程占用的内存并不是无用的,是加快程序运行的。干掉可能会带来一点点副作用,也就是缓存丢失了,得重新进行缓存。