当我查看gdb中的backtrace时,我的应用程序有时会主要在malloc()和malloc_consolidate()中进行段错误.
我确认机器有足够的可用内存,甚至没有开始交换.我检查了ulimits的数据分段和最大内存大小,两者都设置为'无限'.我还在valgrind下运行了应用程序,但没有发现任何内存错误.
现在我没有想到还有什么可能导致这些段错误.有任何想法吗 ?
更新: 由于我没有找到valgrind(或ptrcheck)的任何内容,可能是因为另一个应用程序正在破坏libc的内存结构,还是每个进程都有一个单独的结构?