找回密码
 用户注册

QQ登录

只需一步,快速开始

查看: 5327|回复: 2

ace在liinux中多线程出现内存dump

[复制链接]
发表于 2009-2-4 20:14:45 | 显示全部楼层 |阅读模式
大致流程,我开启了线程池,在主线程中接受网络连接,接受到连接后交给线程池处理,在线程中有动态分配内存和释放,但是出现了malloc_consolidate ()错误,有谁遇到过这种情况吗?
下面是用gdb, bt产生的调用栈
#0  0x0000003dd966fa1e in malloc_consolidate () from /lib64/libc.so.6
#1  0x0000003dd967143b in _int_free () from /lib64/libc.so.6
#2  0x0000003dd9674ccc in free () from /lib64/libc.so.6
#3  0x000000000040b48a in Workers::process_message (this=0x412deff0,
    mb=0x43d3b20) at main.cpp:98
#4  0x000000000040b56c in Workers::svc (this=0x412deff0) at main.cpp:81
#5  0x00002ae414fcc157 in ACE_Task_Base::svc_run (args=<value optimized out>)
    at ../../ace/Task.cpp:275
#6  0x00002ae414fcd0d5 in ACE_Thread_Adapter::invoke (this=0x4392620)
    at ../../ace/Thread_Adapter.cpp:98
#7  0x0000003dda206307 in start_thread () from /lib64/libpthread.so.0
#8  0x0000003dd96d1ded in clone () from /lib64/libc.so.6

谢谢啊
发表于 2009-2-4 21:26:23 | 显示全部楼层
贴上代码,否则谁能猜得出呢。
发表于 2009-2-20 21:57:36 | 显示全部楼层
得看一下堆栈3的局部变量....是什么地方调用了free函数。
您需要登录后才可以回帖 登录 | 用户注册

本版积分规则

Archiver|手机版|小黑屋|ACE Developer ( 京ICP备06055248号 )

GMT+8, 2024-5-8 07:38 , Processed in 0.026572 second(s), 6 queries , Redis On.

Powered by Discuz! X3.5

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表