gpt4 book ai didi

c++做套接字关闭自己运行时

转载 作者:太空宇宙 更新时间:2023-11-04 12:09:20 24 4
gpt4 key购买 nike

我试图用谷歌找到这个问题的答案,但没有结果。
这是:例如,我有一个 HTTP 服务器,它处理来自浏览器的请求,解析 HTTP header 等。如果客户端关闭连接,我的原始套接字是否保持打开状态?

struct sockaddr_storage remoteaddr;
int client_sock = accept(sock_des, (sockaddr*)&remoteaddr, (socklen_t*)sizeof(remoteaddr));
std::thread* handler = new std::thread(handle_connection, client_sock, handler);
handler->join();

static void* handle_connection(int csock, std::thread& th_handler)
{
// foo
close(csock);
//th_handler->
}

如果不是,它是否由“堆”中的指针声明是否有意义?

附言顺便问一下:我的代码安全吗? :)

最佳答案

如果远程主机关闭套接字,则 tcp 连接将关闭,但服务器拥有的套接字是保持分配的资源。您需要自己调用 close(soc) 来释放此资源。套接字不会自行关闭。

关于c++做套接字关闭自己运行时,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49518590/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com