111,129
社区成员
发帖
与我相关
我的任务
分享
foreach (DictionaryEntry de in clientSockets)
{
Socket workSocket = (Socket)de.Value;
System.Threading.Thread.Sleep(1);//????????????????????????
workSocket.Send(_mes, 0, _mes.Length, 0);
}
public void OnClientConnect(IAsyncResult ar)
{
Socket _client = server.EndAccept(ar);
clientSockets.Add(_client.RemoteEndPoint.ToString(), _client);
byte[] mes = new byte[10000];
int rel = _client.Receive(mes);
ClientInfo tempClient = (ClientInfo)Serialize.Deserialize(mes, rel);
if (tempClient.Headers == "join")
{
clients.Add(_client.RemoteEndPoint.ToString(), tempClient);
DataStruct pocket = new DataStruct();
pocket.Headers = "join";
pocket.HostIP = tempClient.HostIP;
pocket.Message = clients;
byte[] _mes = Serialize.serialize(pocket);
foreach (DictionaryEntry de in clientSockets)
{
Socket workSocket = (Socket)de.Value;
System.Threading.Thread.Sleep(1);//????????????????????????
workSocket.Send(_mes, 0, _mes.Length, 0);
}
}
tempClient.Message = new byte[10000];
_client.BeginReceive(tempClient.Message, 0, tempClient.Message.Length, 0, new AsyncCallback(RecieveCallBack), _client);
server.BeginAccept(new AsyncCallback(OnClientConnect), null);
}