/// <summary> /// 接收发送给本机ip对应端口号的数据报 /// </summary> protected virtual void ReciveMsg() { byte[] buffer = new byte[1024]; while (true) { EndPoint point = new IPEndPoint(IPAddress.Any, 0); //用来保存发送方的ip和端口号 int length = server.ReceiveFrom(buffer, ref point); //接收数据报 byte[] messageBytes = buffer.Skip(0).Take(length).ToArray(); //截取数组,从第0位开始,截取length长度的 NetworkMessage me = NetworkMessage.GetMessage(messageBytes); NetworkManager._Instance.AddMessage(me); } }
protected override void ReciveMsg() { try { byte[] buffer = new byte[1024]; while (true) { EndPoint point = new IPEndPoint(IPAddress.Any, 0); //用来保存发送方的ip和端口号 int length = server.ReceiveFrom(buffer, ref point); //接收数据报 byte[] messageBytes = buffer.Skip(0).Take(length).ToArray(); //截取数组,从第0位开始,截取length长度的 NetworkMessage me = NetworkMessage.GetMessage(messageBytes); SendMsgToAllClient(me); } } catch (Exception e) { Debug.LogWarning(e.ToString()); } }
/// <summary> /// 接收发送给本机ip对应端口号的数据报 /// </summary> protected virtual void ReciveMsg() { try { NetworkTools.PrintMessage("客户端开始接收消息"); byte[] buffer = new byte[1024]; while (true) { EndPoint point = new IPEndPoint(IPAddress.Any, 0); //用来保存发送方的ip和端口号 int length = server.ReceiveFrom(buffer, ref point); //接收数据报 byte[] messageBytes = buffer.Skip(0).Take(length).ToArray(); //截取数组,从第0位开始,截取length长度的 //NetworkTools.PrintMessage("接收到消息" + messageBytes.Length); NetworkMessage me = NetworkMessage.GetMessage(messageBytes); //Debug.Log("收到客户端信息; " + me.type); NetworkManager._Instance.AddMessage(me); } } catch (Exception e) { //Debug.LogError(e.ToString()); } }