关于kamailio-4.0.3版本,内存分配
来源:互联网 发布:java全文检索 编辑:程序博客网 时间:2024/05/02 03:01
环境: kamailio.4.0.3+centos+mysql
情况描述:
(1)对于modules/xcap_server 进行功能的扩充, 当客户端发送HTTP PUT请求,根据打印出的内存分配LOG, 其中申请和释放的内存都能完全匹配[能看成内存未泄露吗?]
但是使用free命令查看系统会发现少了接近3M的内存泄露。
(2) 若将使用的kamailio提供的pkg_*的函数的 变为C语言提供的内存函数(malloc等),则不会出现内存泄露。
(3) 当多次处理PUT请求之后, q_malloc(mem): line 156
LOG(L_CRIT, "BUG: qm_*: prev. fragm. tail overwritten(%lx, %lx)[%p:%p]!""\n",
PREV_FRAG_END(f)->check1, PREV_FRAG_END(f)->check2, f,
(char*)f+sizeof(struct qm_frag));
会打印出来。 可不明白这样的错误是怎么造成的,如何避免。
注: 每次内存泄露的比较多,但代码中分配的内存每次都控制在1000字节之内。
我个人觉得应该是自己代码的出的问题,可根据(1)(2)感觉自己的代码也没问题的。
也许自己对于pkg_*的代码不太理解,希望大神能科普一下。
- 关于kamailio-4.0.3版本,内存分配
- 关于内存分配问题
- 关于内存分配
- 关于动态内存分配
- 关于动态内存分配
- 关于内存的分配
- 关于内存分配 realloc
- 关于内存分配
- 关于动态内存分配
- 关于内存分配
- 关于分配内存
- 关于内存分配
- 关于String内存分配
- 关于堆栈、内存分配
- 关于javascript内存分配
- 关于linux 内存分配
- 关于vxWorks下内存分配
- 关于程序中内存分配
- 将用DataSet获取所有的数据存入数组中去
- eclipese安装pydev(解决不显示pydev的设置项)
- Storm中Topology的状态
- Android Smart Image View
- Listener监听器一
- 关于kamailio-4.0.3版本,内存分配
- python之列表(list),元组(tuple),集合(set),字典(dict)
- HDoj 1181 变形课(深搜过)
- LDAP快速入门
- 从明年接触深度学习开始写博客,总结。
- Oracle 集合函数(count,sum等)和case when的组合使用
- 简单的表单
- python之StringIO
- 。。。