protected bool InitKcpClient(IPEndPoint ep) { kcpClient = KcpHostClient.Create(ep); kcpClient.OnReceive += (kcp, buffer) => { OnReceive?.Invoke(this, buffer); }; kcpClient.OnClose += (kcp) => { OnClose?.Invoke(this); }; kcpClient.OnException += (ch, ex) => { OnException?.Invoke(this, ex); }; Log.Info(string.Format("init_kcp_client_localaddr@{0}", kcpClient.LocalAddress)); return(true); }
public static KcpHostClient Create(IPEndPoint remoteAddress) { var channelConfig = new ChannelConfig(); channelConfig.Crc32Check = false; channelConfig.initNodelay(true, 10, 2, true); channelConfig.Sndwnd = 512; channelConfig.Rcvwnd = 512; channelConfig.Mtu = 512; channelConfig.FecDataShardCount = 0; channelConfig.FecParityShardCount = 0; channelConfig.AckNoDelay = true; //channelConfig.Conv = 10;//.AutoSetConv = true; channelConfig.UseConvChannel = false; var listener = new KcpHostClient(channelConfig, remoteAddress); return(listener); }