[原创] 今天遇到的问题:任务堆栈没给够所以死机

乔海权   2023-8-23 17:44 楼主

问题1::

创建一个任务,UDP 发送数据用的,给了256字节堆栈,然后就死机了,改为1024问题解决。

 

问题2:

UDP 绑定本地端口写法,注意IP地址用IPADDR_ANY, 源代码用的  #define IPADDR_LOOPBACK     ((u32_t)0x7f000001UL)不太行,改为IPADDR_ANY

    memset(&src, 0, sizeof(struct sockaddr_in));

    src.sin_family = AF_INET;

    src.sin_addr.s_addr = htonl(IPADDR_ANY);

    src.sin_port = htons(NETLOG_PORT_BIND);

 

    if(bind(sendFd, (struct sockaddr *)&src, sizeof(struct sockaddr_in)) != 0)

    {

        close(sendFd);

        return;

    }

 

回复评论 (4)

256字节堆栈确实显小了。

默认摸鱼,再摸鱼。2022、9、28
点赞  2023-8-23 19:11

栈溢出这种情况应该会有对应的报错信息吧。

点赞  2023-8-23 19:15
你上OS了没?如果上了OS通常能检查到错误,如果没上那就不容易发现错误原因了。
点赞  2023-8-23 21:27
栈溢出太常见了
点赞  2023-8-24 11:08
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复