【发布时间】:2010-09-08 19:40:50
【问题描述】:
我们偶尔会遇到问题,即我们的长时间运行的服务器进程(在 Windows Server 2003 上运行)由于内存分配失败而引发异常。我们怀疑这些分配由于内存碎片而失败。
因此,我们一直在寻找一些可能对我们有所帮助的替代内存分配机制,我希望有人能告诉我最好的:
1) 使用 Windows Low-fragmentation Heap
2) jemalloc - 用于Firefox 3
3) Doug Lea 的malloc
我们的服务器进程是使用跨平台 C++ 代码开发的,因此理想的解决方案也是跨平台的(*nix 操作系统会遭受这种类型的内存碎片吗?)。
另外,我认为 LFH 现在是 Windows Server 2008 / Vista 的默认内存分配机制是否正确?...如果我们的客户只是升级他们的服务器操作系统,我当前的问题会“消失”吗?
【问题讨论】: