private KCPStateObject InitKCPObject(EndPoint remote)
        {
            lock (lockObject)
            {
                KCPStateObject kcp       = null;
                string         remoteKey = RemotePoint2Key(remote);
                if (map_remote2KCP.TryGetValue(remoteKey, out kcp))
                {
                    return(kcp);
                }

                NetDebug.Log("[S] InitKCPObject, remote:{0}", remote);

                kcp = new KCPStateObject();
                kcp.Initialize(remote, setting.kcp);
                kcp.remote = remote;

                kcp.sendHandle      = OnKCPSend;
                kcp.receiveHandle   = OnKCPReceive;
                kcp.timeoutCallback = OnTimeoutCallback;
                map_remote2KCP.Add(remoteKey, kcp);

                return(kcp);
            }
        }
Beispiel #2
0
        private void InitKCP(UDPSetting setting)
        {
            _kcpObject = new KCPStateObject();
            _kcpObject.Initialize(this, setting.kcp);
            _kcpObject.remote = remoterPoint;

            _kcpObject.sendHandle    = OnKCPSend;
            _kcpObject.receiveHandle = OnKCPReceive;
        }