STM32
直播中

郑成枝

7年用户 1340经验值
私信 关注
[问答]

STM32H743ZIT6调试FreeRTOS + LWIP,有什么办法能将socket设置为非堵塞方式?

大家好,
     我们现在用STM32H743ZIT6,在调试FreeRTOS + LWIP,发现SOCKET为堵塞方式,有什么办法能将socket设置为非堵塞方式?setsockopt函数设置,已经测试过了,不起作用;大神们帮看下,多谢

回帖(1)

杨玲

2024-4-26 10:09:15
windows和linux平台上accept()函数返回的socekt也是阻塞的,linux另外提供了一个accept4()函数,可以直接将返回的socket设置为非阻塞模式

int accept(int sockfd, struct sockaddr *addr, socklen_t *addrlen);

int accept4(int sockfd, struct sockaddr *addr, socklen_t *addrlen, int flags);

只要将accept4()最后一个参数flags设置成SOCK_NONBLOCK即可。 
举报

更多回帖

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