我在具有 16 G ram 和 2 个四核 CPU 的机器上使用 SUSE 10 Linux。有 8 个进程正在做一些工作(CPU 密集型/网络 i/o)。其中 4 个有内存泄漏(这些是测试条件,所以这里有泄漏没有问题)。所有进程占用的总空间约为 15.4 G,系统中只有 200 MB 可用。几个小时内一切都很好。但是在那之后 malloc 挂起(对于没有内存泄漏的进程)。它卡住了超过 4 分钟(注意 CPU 不是 100%,但 io 已经显着上升)。现在挂起的进程没有问题(它没有损坏内存)。malloc 在做什么?(是试图整理碎片还是建立交换空间)。
任何指针?