Async Tcp Server 我只能得到一个客户端。
当我有多个客户端时。我只是在服务器中获得第一个客户端,但其他客户端在客户端中连接。
这是我的服务器代码:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Net.Sockets;
using System.Threading;
namespace BeginAcceptTcpClientserver
{
class Program
{
static void Main(string[] args)
{
TcpListener listener = new TcpListener(1234);
listener.Start();
listener.BeginAcceptTcpClient(callbake,listenner);
Console.WriteLine("print q to quit");
ConsoleKey key;
do
{
key = Console.ReadKey().Key;
} while (key != ConsoleKey.Q);
}
static void callbake(IAsyncResult ar)
{
TcpClient clienter = ((TcpListener)ar.AsyncState).EndAcceptTcpClient(ar);
Console.WriteLine("---client connect {0}<--{1} ---", clienter.Client.LocalEndPoint, clienter.Client.RemoteEndPoint);
}
}
}