Ejemplo n.º 1
0
        public void Dispose()
        {
            if (Closed)
            {
                return;
            }

            Connected = false;
            Closed    = true;

            thread.Abort();
            thread.Join();

            establisher.SendDisconnect();
            establisher.Connected -= OnConnected;
            callbackDistributor.Dispose();
            connection.Dispose();

            _ = WaitAndClose(connection.Remote);
        }
Ejemplo n.º 2
0
        public void Dispose()
        {
            if (Closed)
            {
                return;
            }
            Closed = true;

            foreach (var connectionID in connections.Keys)
            {
                DisconnectClient(connectionID);
            }

            thread.Abort();
            thread.Join();

            callbackDistributor.ConnectRequested -= OnConnectRequest;
            callbackDistributor.Dispose();
            packetDistributor.PacketReceived -= OnPacketReceived;
        }