首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

初学socket通讯,一段代码不懂

2013-07-24 
初学socket通信,一段代码不懂//初始化接受套接字:寻址方案,以字符流方式和Tcp通信socketReceive new Soc

初学socket通信,一段代码不懂


//初始化接受套接字:寻址方案,以字符流方式和Tcp通信
socketReceive = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);

//获取本机IP地址并设置接受信息的端口
ipReceive = new IPEndPoint(Dns.GetHostEntry(Dns.GetHostName()).AddressList[0], 8001);

//将本机IP地址和接受端口绑定到接受套接字
socketReceive.Bind(ipReceive);

//监听端口,并设置监听缓存大小为1024byte
socketReceive.Listen(1024);

Socket chat = socketReceive.Accept();//这里的accept有什么用,为什么不能用socketReceive直接进行通信,listen不是阻塞的吗?

[解决办法]
Listen不阻塞,Listen的作用是让一个面向连接的 Socket 侦听传入的连接尝试,其参数指定队列中最多可容纳的等待接受的传入连接数。 
Accept用来接受一个远程的连接请求,服务端用这个Accept返回的套接字也就是这里的chat与客户端通讯。

热点排行