社区
网络编程
帖子详情
在异常断开连接时如何delete socket?
yjgx007
2005-01-13 10:30:10
我用CSocket写的Client/Server程序, Server建立一个侦听socket, 每个Client socket连接到Server时,在Server端会采用new的方式创建一个Client Socket与Client保持通讯.
当某一个Client异常断开后,在Server端我用delete方法删除该Client Socket是不成功的,会抛出异常, 并且该Client Socket并未delete.
各位有什么好的方法吗?
...全文
411
9
打赏
收藏
在异常断开连接时如何delete socket?
我用CSocket写的Client/Server程序, Server建立一个侦听socket, 每个Client socket连接到Server时,在Server端会采用new的方式创建一个Client Socket与Client保持通讯. 当某一个Client异常断开后,在Server端我用delete方法删除该Client Socket是不成功的,会抛出异常, 并且该Client Socket并未delete. 各位有什么好的方法吗?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
9 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
yjgx007
2005-01-14
打赏
举报
回复
up!
gdy119
2005-01-14
打赏
举报
回复
try
{
pSocket->close()
delete psocket;
}
catch(...)
{
.........
}
Hendy_So
2005-01-14
打赏
举报
回复
你只说异常,又没说什么异常,而且不见你的所谓删除代码,难道要别人猜吗?
那我先猜一下,不要直接delete,或许应该先Close。没用过CSocket,不知是不是这样的。
Hendy_So
2005-01-13
打赏
举报
回复
看看是什么异常,根据异常处理。
可以贴代码一看。
yjgx007
2005-01-13
打赏
举报
回复
pelease help me, appreciate for your helps!
yjgx007
2005-01-13
打赏
举报
回复
up!
yjgx007
2005-01-13
打赏
举报
回复
当有一个Client连接至Server, Server的listen socket在OnAccept函数中:
CListenSocket::OnAccept(){
CClientSocket* pSocket = new CClientSocket(this);
if (m_pSocket->Accept(*pSocket))
{
...
}
}
当Client的连接断开后(我这里强制结束Client程序进程), 那么Server端需要删除
与之对应的ClientSocket(上面new生成的), 这样就会抛出异常,为什么呢?怎么解决?
xuzheng318
2005-01-13
打赏
举报
回复
把代码贴出来看看!
oyljerry
2005-01-13
打赏
举报
回复
保证资源释放
Qt5 C++ Tcp
Socket
如何判断是服务主动断开tcp
socket
连接?
在 Qt 5.9.9 的 C++ 开发中,使用QTcp
Socket
时
,要判断是服务端主动断开 TCP
Socket
连接,可以通过处理QTcp
Socket
的信号,结合QTcp
Socket
的状态以及相关事件信息来综合判断。
ESP32在STA模式下创建TCP Sever允许多个Client建立连接TCP 通信并在客户端
异常
断开
时
关闭连接
TCP Sever创建TCP多连接并在客户端
异常
断开
时
关闭连接前言例程详情你需要做哪些准备工作?如何让该例程运行起来程序的流程建立TCP Server部分连接通信处理部分结语。 前言 ESP32是乐鑫现在主推的一款WIFI模块,...
QT中C端关闭导致S端崩溃问题
5. **
socket
操作问题**:如果在客户端关闭连接
时
,服务器端的QTcpServer对象被析构,而此
时
socket
还没有正确关闭,可能会导致崩溃。7. **TCP连接关闭方式**:了解不同的TCP连接关闭方式,并选择适当的关闭方法。1. *...
boost::asio::
socket
tcp 连接 在程序结束
时
崩溃。
刚开始的
时
候一直不知道怎么回事,不过幸好我有在每个class 的析构
时
都打印一条信息。 这个
时
候发现我的一个tcp_connection (就是自定义的一个连接类) 在最后才被析构。 所以感觉这里可能出了问题。 由于tcp_...
socket
连接池
SOCKET
连接池产生,目的是为了减少内核在创建和销毁
SOCKET
时
所产生的开销,一个两个的
SOCKET
的这个过程是比较容易的,但一旦多了后,特别在一些具体的环境,比如大并发的不断的登录和退出
时
,内核的开销是非常痛 ...
网络编程
18,358
社区成员
64,164
社区内容
发帖
与我相关
我的任务
网络编程
VC/MFC 网络编程
复制链接
扫一扫
分享
社区描述
VC/MFC 网络编程
c++
c语言
开发语言
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章