socket通信程序,关于客户端断开连接导致服务器端进程退出的问题,大家帮忙分析下。
时间:2010-08-12
来源:互联网
写了个简单的socket通信程序,客户端从服务器端下载指定的文件,TCP。
服务器端每次监听到一个客户端连接都新开一个线程与其通信,发送客户端指定的文件(read,write)。如果客户端在下载过程中ctrl+c退出,导致服务器端进程也退出。不知道这是为什么。
服务器每次创建线程都分离,并且函数里异常都调用pthread_exit函数。怎么会导致主进程退出呢?大家帮帮分析下啊。
服务器端每次监听到一个客户端连接都新开一个线程与其通信,发送客户端指定的文件(read,write)。如果客户端在下载过程中ctrl+c退出,导致服务器端进程也退出。不知道这是为什么。
服务器每次创建线程都分离,并且函数里异常都调用pthread_exit函数。怎么会导致主进程退出呢?大家帮帮分析下啊。
作者: robin254817 发布时间: 2010-08-12
本来想下载过程断开,下次启动能从断点处继续下载。这个功能实现了,确出现了上面的问题。在线等回复啊。高手帮忙呀。
作者: robin254817 发布时间: 2010-08-12
退出部分code
作者: 梅川内依酷 发布时间: 2010-08-12
见鬼了,又试了几次服务器端不退出了,返回write(): Connection reset by peer,哎,越来越迷糊。。。
作者: robin254817 发布时间: 2010-08-12
回复 robin254817
write(): Connection reset by peer是客户端主动退出。
主程序你有没有忽略SIGPIPE信号?
write(): Connection reset by peer是客户端主动退出。
主程序你有没有忽略SIGPIPE信号?
作者: 梅川内依酷 发布时间: 2010-08-12
楼上正解
作者: albeta 发布时间: 2010-08-12
相关阅读 更多
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28