public virtual void Disconnect()
 {
     outboundUDPSenderThread.Abort();
     inboundUDPReaderThread.Abort();
     outboundTCPSenderThread.Abort();
     client.Disconnect();
 }