真不好意思麻烦一下这里的大大们,俺遇到了一个内存碎片的大问题~,希望你们能给予一些指点~,在下先行谢过了:)
是这样的:这是一个网络程序,在实际的需求中需要很频繁地申请释放内存(用new 和 delete),所以出现了很多的内存碎片(我十分确认没有内存泄漏,因为我在用完后当即就释放了啊)。其突出表现是程序所占的虚拟内存越来越大(其实所占物理内存也变大,但是把窗口最小化一次后就突然变到几M了,不知是怎么回事)。
有没有什么有效的通用的方法解决这个问题啊?急盼答案,谢谢!
有效通过的方法就由内存片组成的内存池技术。你自己申请预留比如64K个256字节为一片的内存片作成链。然后自己做申请,释放,以及拷贝(因为申请的子链的片不一定是地址连续的)。 - 回复 | (958) | 2002thinking | 2006-02-11 09:07:23