STM32
直播中

微风挽雨

9年用户 927经验值
擅长:可编程逻辑 电源/新能源 嵌入式技术
私信 关注
[问答]

lwip出现错误: recvmbox must be deallocated before calling this function怎么解决?

在 服务器端 与 开发板之间连接成功后, 就不会出现 任何错误,工作也都正常
    当 服务器端断开连接后,大概 5-10s 左右就会出现  错误, 另外还会提示
Assertion "recvmbox must be deallocated before calling this function" failed at line 803 in ..MiddlewaresThird_PartyLwIPsrcapiapi_msg.c
Assertion "acceptmbox must be deallocated before calling this function" failed at line 806 in ..MiddlewaresThird_PartyLwIPsrcapiapi_msg.c
请问 上面的 问题该如何解决啊 ??

回帖(1)

李丽华

2024-4-15 09:48:07
根据协议栈的函数,调试一下,看看有没有free  mbox{:1:}

void
netconn_free(struct netconn *conn)
{
  LWIP_ASSERT("{:9:}CB must be deallocated outside this function", conn->pcb.tcp == NULL);

#if LWIP_NETCONN_FULLDUPLEX
  /* in fullduplex, netconn is drained here */
  netconn_drain(conn);
#endif /* LWIP_NETCONN_FULLDUPLEX */

  LWIP_ASSERT("recvmbox must be deallocated before calling this function",
              !sys_mbox_valid( conn->recvmbox));
#if LWIP_TCP
  LWIP_ASSERT("acceptmbox must be deallocated before calling this function",
              !sys_mbox_valid( conn->acceptmbox));
举报

更多回帖

发帖
×
20
完善资料,
赚取积分