/// <summary> /// 接收指定客户端Socket的消息 /// </summary> /// <param name="clientSocket"></param> private void RecieveMessage(object clientSocket) { Socket mClientSocket = (Socket)clientSocket; while (true) { try { byte[] result = new byte[1024]; int receiveNumber = mClientSocket.Receive(result); //Console.WriteLine("接收客户端{0},{1}消息, 长度为{2}", mClientSocket.RemoteEndPoint.ToString(), mClientSocket.GetHashCode(), receiveNumber); //ByteBuffer buff = new ByteBuffer(result); ////数据长度 //int len = buff.ReadShort(); ////数据内容 //string data = buff.ReadString(); ServerManager.Instance.B2C(mClientSocket.GetHashCode(), ByteToObject.Bytes2Object(result)); //Console.WriteLine("数据内容:{0}", data); } catch (Exception ex) { Console.WriteLine(ex.Message); break; } } }
public void SendMessage(Socket clientSocket, object obj) { //ByteBuffer buffer = new ByteBuffer(); //buffer.WriteString(obj.ToString()); //clientSocket.Send(WriteMessage(buffer.ToBytes())); clientSocket.Send(ByteToObject.Object2Bytes(obj)); }
private void ReciveMessage() { while (true) { byte[] result = new byte[1024]; int receiveLength = clientSocket.Receive(result); //ByteBuffer buffer = new ByteBuffer(result); //int len = buffer.ReadShort(); //string data = buffer.ReadString(); ClientManager.Instance.C2B(ByteToObject.Bytes2Object(result)); } }
/// <summary> /// 发送数据给服务器 /// </summary> public void SendMessage(object obj) { if (IsConnected == false) { return; } try { clientSocket.Send(ByteToObject.Object2Bytes(obj)); } catch { Dispose(); } }