CSDN论坛 > VC/MFC > 网络编程

TCP:客户端连接服务器, 断开后再次连接失败,用GetLastError()返回100038错误 [问题点数:20分,结帖人Busichong]

Bbs1
本版专家分:77
结帖率 100%
CSDN今日推荐
Bbs1
本版专家分:77
Bbs5
本版专家分:3893
Bbs5
本版专家分:2083
Bbs2
本版专家分:144
Bbs1
本版专家分:77
Bbs7
本版专家分:25542
Blank
红花 2009年6月 专题开发/技术/项目大版内专家分月排行榜第一
2009年5月 专题开发/技术/项目大版内专家分月排行榜第一
2009年4月 专题开发/技术/项目大版内专家分月排行榜第一
2009年3月 专题开发/技术/项目大版内专家分月排行榜第一
2008年12月 专题开发/技术/项目大版内专家分月排行榜第一
2004年5月 VC/MFC大版内专家分月排行榜第一
Blank
黄花 2008年9月 专题开发/技术/项目大版内专家分月排行榜第二
Blank
蓝花 2009年10月 专题开发/技术/项目大版内专家分月排行榜第三
2009年2月 专题开发/技术/项目大版内专家分月排行榜第三
匿名用户不能发表回复!
其他相关推荐
TCP异常处理(accept返回前连接中止)与SO_LINGER选项
一、accept返回前终止分析 问题一: 因为accept是堵塞的, 并且等待来自客户端的连接, 但是, 如果在accept期间 , 如果因为系统调用中断了accept就会返回一个非致命的错误, 而此时有来自客户端进行TCP三路握手完成后, 而我们通过循环在此调用accept函数可以完成连接,。因为TCP的连接是在内核中完成的, 与accept函数的执行无关。 问题二: 如果我们在调用ac
【VS开发】TCP服务端如何判断客户端断开连接
原文出自:http://www.cnblogs.com/youxin/p/4056041.html 一篇文章:   最近在做一个服务器端程序,C/S结构。功能方面比较简单就是client端与server端建立连接,然后发送消息给server。我在server端会使用专门的线程处理一条socket连接。这就涉及到一个问题,如果socket连接断开(异常,正常)后,我如何才能感知到?
linux socket tcp server 解决客户端socket断开后, 服务器端进程退出的问题
当服务器监听并接受一个客户端链接的时候, 可以不断向客户端发送数据, 这时如果客户端断开socket链接, 服务器继续向一个关闭的socket 发送数据(send, write)的时候, 系统会默认对服务器进程发送一个SIGPIPE信号, 这个信号的默认动作就是终止当前服务器进程. 所以为了解决客户端断开后导致服务器进程结束的问题, 使用如下方法忽略SIGPIPE信号. struct siga
Lwip 断连,连接几次后不通及偶尔不通的问题.
struct tcp_pcb *tcp_find_distant(void) { #if LWIP_AUTO_FREE_ACTIVE_PCB     struct tcp_pcb *pcb  = NULL;     struct tcp_pcb *last_pcb  = NULL;     unsigned long last_tick = get_sys_tick();     in
Tcp通信中服务器处理客户端意外断开
Tcp通信中服务器处理客户端意外断开 所谓意外断开,是客户端(多指支持3G的移动设备)并没有正常关闭socket,双方并未按照协议上的四次挥手去断开连接,一般的处理办法都是利用保活机制。而保活机制分又可以让底层实现也可自己实现。 一、双方拟定心跳(自实现) 一般由客户端发送心跳包,服务端并不回应心跳,只是定时轮询判断一下与上次的时间间隔是否超时(超时时间自己设
TCP之种种连接异常
出处:http://www.cnblogs.com/wanpengcoder/p/5356776.html 1. connect出错: (1) 若TCP客户端没有收到syn分节的响应,则返回ETIMEOUT错误;调用connect函数时,内核发送一个syn,若无响应则等待6s后再发送一个,若仍然无响应则等待24s后在发送一个,若总共等待75s后仍未收到响应则返回本错误; (2) 若对
tcp 服务端如何判断客户端断开连接
一篇文章:   最近在做一个服务器端程序,C/S结构。功能方面比较简单就是client端与server端建立连接,然后发送消息给server。我在server端会使用专门的线程处理一条socket连接。这就涉及到一个问题,如果socket连接断开(异常,正常)后,我如何才能感知到?server端这边是绝对被动的,sever端不能主动断开连接。也没有连接链路维持包之类的。client端发
关于socket编程中服务器端如何检测客户端连接断开的问题
<br />最近在用C#写基于tcp、udp进行数据发送与接收的程序。由于在tcp通信中客户端与服务器端的通信是基于握手协议的,所以一旦客户端断开与服务器端的连接时,服务器端需要检测客户端的这个动作,并返回到端口侦听状态而不是继续处于读缓冲区数据状态,否则客户端下次就无法与服务器再次连接了。下面是我写的tcp服务器端的部分程序():<br /> <br />private void Listen()<br />        {<br />            tcpServerListener.Star
解决TCP通信客户端断开连接服务器自动关闭
服务器会断开主要是 客户端断开后产生了 SIGPIPE信号   在对的位置忽略掉该信号就可以了! 蓝色框体为我自己测试结果!框体左边的是查的大牛们的讲解。 哈哈!第一次写博客 还请多包涵!都不会用这玩意儿 ...... 囧...
java中判断socket服务器端是否断开连接
最近在开发中遇到一个问题,就是如何判断远端服务器是否已经断开连接,如果断开那么需要重新连接。 首先想到socket类的方法isClosed()、isConnected()、isInputStreamShutdown()、isOutputStreamShutdown()等,但经过试验并查看相关文档,这些方法都是本地端的状态,无法判断远端是否已经断开连接。 然后想到是否可以通过OutputStre
关闭
关闭