C#教程:套接字使用实例|方法
套接字
.NET Framework Socket类是Winsock32 API提供的套接字服务的托管代码版本。在大多数情况下,Socket类方法只是将数据封送到它们的本机Win32副本中,并处理任何必要的安全检查。
Socket类支持两种基本模式:同步和异步。在同步模式中,对执行网络操作的函数(如Send和Receive)的调用一直等到操作完成后才将控制权返回给调用程序,而在异步模式中,这些调用立即返回。
在可以使用套接字与远程设备通信之前,必须使用协议和网络地址信息初始化套接字。Socket类的构造函数具有指定套接字用来建立连接的地址族、套接字类型和协议类型的参数等功能。
在基于TCP/IP的网络(如Internet)上通信的关键代码如下:
Socket s = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
要使用UDP而不是TCP进行通信的关键代码如下:
Socket s = new Socket(AddressFamily.InterNetwork, SocketType.Dgram, ProtocolType.Udp);
参数说明如下。
AddressFamily :AddressFamily枚举,用来指定Socket类解析网络地址的标准地址族。
SocketType:SocketType枚举,用来指定套接字的类型。
ProtocolType:ProtocolType枚举,用来指定在Socket上通信时使用的网络协议。
创建Socket类后,它既可以开始与远程终结点的连接,也可以接收来自远程设备的连接。