中级会员
- 积分
- 452
- 金钱
- 452
- 注册时间
- 2019-5-20
- 在线时间
- 65 小时
|
Assertion "pbuf_free: p->ref > 0" failed at line 650 in ..\LWIP\lwip-1.4.1\src\core\pbuf.c
STM32F407做TCP服务器,连接的第一次没问题,不断开就没事,一断开就出事了,后续过了几分钟就会卡住程序死机,调试时奇怪不会死机
串口打印出现这条语句
翻译断言“pbuf_free: p->ref > 0”在..\LWIP\ LWIP -1.4.1\src\core\pbuf.c的第650行失败
这是释放pbuf发生的问题吗,是不是内存不够
用的是FreeRTOS
代码和官方几乎一样
除了这下面这些是移植参考网友的,有经验的大佬请教一下,问题大致是哪里出的
//当消息指针为空时,指向一个常量pvNullPointer所指向的值.
//在UCOS中如果OSQPost()中的msg==NULL会返回一条OS_ERR_POST_NULL
//错误,而在lwip中会调用sys_mbox_post(mbox,NULL)发送一条空消息,我们
//在本函数中把NULL变成一个常量指针0Xffffffff
const void * const pvNullPointer = (mem_ptr_t*)0xffffffff;
//创建一个消息邮箱
//*mbox:消息邮箱
//size:邮箱大小
//返回值:ERR_OK,创建成功
// 其他,创建失败
err_t sys_mbox_new( sys_mbox_t *mbox, int size)
{
|
|