小编Bra*_*ner的帖子

套接字关闭后c ++ linux accept()阻塞

我有一个侦听新连接的线程

new_fd = accept(Listen_fd, (struct sockaddr *) & their_addr, &sin_size);
Run Code Online (Sandbox Code Playgroud)

和另一个在关闭程序时关闭Listen_fd的线程.然而,在Listen_fd关闭后,它仍然会阻塞.当我使用GDB尝试和调试时,accept()不会阻塞.我认为这可能是SO_LINGER的问题,但默认情况下它不应该打开,并且在使用GDB时不应该更改.有什么想法,或关闭列表套接字的任何其他建议?

c++ sockets linux blocking

5
推荐指数
3
解决办法
9182
查看次数

标签 统计

blocking ×1

c++ ×1

linux ×1

sockets ×1