最近简单学习了一下C# Socket的一些用法,在这里稍作总结;
了解过Socket的,应该都知道记可以做服务端开发也可以做客户端开发,在这里就简单介绍一下;
主要是客户端服务端的创建,连接,发送等内容;
做之前,先说一下这个结构,我们需要连接,发送等逻辑,为了方便测试,我们需要建两个项目;
建两个控制台应用程序,一个服务端,一个客户端;
首先,我们在服务端项目中建一个Server.cs;
引入需要的程序集;
using System;
using System.Text;
using System.Net;
using System.Net.Sockets;
using System.Threading;
public class Server {
private string m_host;
private int m_port;
private int m_backlog;
private Socket m_socket;
/// <summary>
/// 传入参数默认加入数量限制参数
/// </summary>
/// <param name="host"></param>
/// <param name="port"></param>
public Server(string host, int port) : this(host, port, 10) {
}
/// <summary>
/// 创建一个server对象
/// </summary>
/// <param name="host">ip地址</param>
/// <param name="port">端口号</param>
/// <param name="backlog">连接数量</param>
public Server(string host, int port, int backlog) {
m_host = host;
m_port = port;
m_backlog = backlog;
m_socket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
}
/// <summary>
/// 开启服务器
/// 之后开启一个后台运行的线程, 用于监听客户端的请求
/// </summary>
public void Begin()