using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Net.Sockets;
using System.Text;
using System.Threading.Tasks;
namespace Echo
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("Hello world!");
//Socket
Socket listenfd = new Socket(AddressFamily.InterNetwork,SocketType.Stream, ProtocolType.Tcp);
//Bind
IPAddress ipAdr = IPAddress.Parse("127.0.0.1");
IPEndPoint ipEp = new IPEndPoint(ipAdr, 8888);
listenfd.Bind(ipEp);
//Listen
listenfd.Listen(0);//backlog最多可容纳的连接数,0表示不限制
Console.WriteLine("[服务器] 启动成功");
while (true)
{
//Accept
Socket connfd = listenfd.Accept();
Console.WriteLine("[服务器] Accept");
//Receive
byte[] readBuff = new byte[1024];
int count = connfd.Receive(readBuff);
string readStr = System.Text.Encoding.Default.GetString(readBuff, 0, count);
//Send
byte[] sendbytes = System.Text.Encoding.Default.GetBytes(readStr);
connfd.Send(sendbytes);
}
Console.Read();
}
}
}