CSDN论坛 > VC/MFC > 基础类

严重关注: WIN2K下的SOCKET编程问题, 有关send()和closesocket()! [问题点数:0分]

Bbs1
本版专家分:0
结帖率 100%
CSDN今日推荐
匿名用户不能发表回复!
其他相关推荐
linux下close 掉socket 之后 阻塞的recv 不会立即返回
在开发的一个基于rtmp聊天的程序时发现了一个很奇怪的现象。 在windows下当我们执行 closesocket 的操作之后,阻塞的 recv 会立即返回 -1 。 而在linux 下 当我们执行 close 操作之后 阻塞的recv 会出现不能立即返回的现象。后来在网上一搜发现很多遇到类似这种现象的情况,大致意思应该是 当socket 被动被close 的时候 进入了 “CLOSE_WA
socket关闭的close和shutdown区别[转]
socket关闭close和shutdown socket关闭有2个close,shutdown 他们之间的区别: close-----关闭本进程的socket id,但链接还是开着的,用这个socket id的其它进程还能用这个链接,能读或写这个socket id shutdown--则破坏了socket 链接,读的时候可能侦探到EOF结束符,写的时候可能会收到一个SIG
windows socket编程(服务端频繁的执行FD_CLOSE)
一个web客户端程序连服务器,在线程里面用WSAEventSelect来选择网络事件,实际运行过程中发现客户端对服务器的指令有时根本没反映,(不是每次,只是有时候,但出现频率还是比较高的),我用网络抓包及打印日志,发现服务器信息已经发到了客户端,但是却没有触发已定义的网络事件了。通过查看日志发现服务器消息发送后,有时紧跟着就执行了FD_CLOSE将长连接断开了,从而导致服务器信息已经发到了客户端,
Linux网络编程中常见的陷阱
1、谨慎处理Linux信号量和错误号 首先介绍两个很常用网络编程的用法, (1)很多套接字程序中为了防止进程收到SIGPIPE信号时崩溃往往会在进程中设置忽略信号SIGPIPE​。 (2)但是很多程序为了提高send的成功率对send做了二次封装,即对send的返回值进行判断,如果返回-1则进一步对Linux系统错误号errno进行判断,如果errno==EINTR则继续send
closesocket和linger,关于安全关闭socket(转自MSDN)
c++ socket closesocket linger
SOCKET 中 send 的字节数 和什么有关 ?
[背景知识] MTU: Maxitum Transmission Unit 最大传输单元 MSS: Maxitum Segment Size 最大分段大小 PPPoE: PPP Over Ethernet(在以太网上承载PPP协议) MTU 1500字节: 以太网. 1492字节: PPPoE. 1472字节: ping 1468字节: DHCP 1430字节: VPN
socket编程缓冲区大小对send()的影响
1. 概述 Socket编程中,使用send()传送数据时,返回结果受到以下几个因素的影响: • Blocking模式或non-blocking模式 • 发送缓冲区的大小 • 接收窗口大小 本文档介绍通过实验的方式,得出(收发)缓冲区大小对send结果的影响。实验使用C语言。 2 数据发送和接收的过程 如下图所示,程序调用send()发送数据时,数据将首先进入发送缓冲区,等待发送。系
SOCKET错误码详解
WSAEINVAL 10022 官方解释: The socket has not been bound with bind, or an unknown flag was specified, or MSG_OOB was specified for a socket with SO_OOBINLINE enabled or (for byte stream sockets only)
关闭Socket的正确方式及ECONNRESET,WSAECONNRESET产生的原因
  ECONNRESET是linux环境网络编程产生的错误,错误码为104,WSAECONNRESET是windows环境网络编程产生的错误,错误码为10054 两者产生的原因都一样,分以下几种情况: - 接收端recv或者read, 对端已经关闭连接,recv/read返回该错误 - 对端重启连接,还未建立连接 - 发送端已经断开连接,但是调用send会触发这个错误   第二点第三点都...
VC++ Scoket编程小结
#include //可以工程向导中设置支持scoket #pragma comment(lib, "ws2_32.lib") //也可以通过属性选项设置 socket、bind、connect、accept、listen、send、recv、closesocket、htonl、ntohl、inet_addr、inet_ntoa、getsockname、getpeerna
关闭
关闭