/// <summary>
        /// Disconnects from remote application and closes channel.
        /// </summary>
        public override void Disconnect()
        {
#if UTILIZA_DESCONEXION_AUTOMATICA
            if (timerTimeout != null)
            {
                timerTimeout.Stop();
                timerTimeout = null;//????
            }
#endif

            if (CommunicationState != CommunicationStates.Connected)
            {
                return;
            }

            _running = false;
            try
            {
                if (_clientSocket.Connected)
                {
                    _clientSocket.Close();
                }

                _clientSocket.Dispose();
            }
            catch
            {
            }

            CommunicationState = CommunicationStates.Disconnected;
            OnDisconnected();
        }
        /// <summary>
        /// Starts the thread to receive messages from socket.
        /// </summary>
        protected override void StartInternal()
        {
            _running = true;
            IAsyncResult res = _clientSocket.BeginReceive(_buffer, 0, _buffer.Length, 0, new AsyncCallback(ReceiveCallback), null);

#if UTILIZA_DESCONEXION_AUTOMATICA
            //  if (res.IsCompleted)
            {
                timerTimeout          = new Threading.Timer(120000);
                timerTimeout.Elapsed += new EventHandler(timerTimeout_Elapsed);
                timerTimeout.Start();
            }
#endif
        }
Exemple #3
0
 private void button12_Click(object sender, EventArgs e)
 {
     if (null != _perRaido)
     {
         _perRaido.WaitToStop();
         _perRaido = null;
     }
     else
     {
         _perRaido          = new Hik.Threading.Timer(100);
         _perRaido.Elapsed += __PerRadio_Elapsed;
         _perRaido.Start();
     }
 }
        /// <summary>
        /// Starts the thread to receive messages from socket.
        /// </summary>
        protected override void StartInternal()
        {
            _running = true;
            IAsyncResult res = _clientSocket.BeginReceive(_buffer, 0, _buffer.Length, 0, new AsyncCallback(ReceiveCallback), null);

#if UTILIZA_DESCONEXION_AUTOMATICA
            //  if (res.IsCompleted)
            {
                timerTimeout = new Threading.Timer(120000);
                timerTimeout.Elapsed += new EventHandler(timerTimeout_Elapsed);
                timerTimeout.Start();
            }
#endif
        }
        /// <summary>
        /// Disconnects from remote application and closes channel.
        /// </summary>
        public override void Disconnect()
        {

#if UTILIZA_DESCONEXION_AUTOMATICA
            if (timerTimeout != null)
            {
                timerTimeout.Stop();
                timerTimeout = null;//????
            }
#endif

            if (CommunicationState != CommunicationStates.Connected)
            {
                return;
            }

            _running = false;
            try
            {
                if (_clientSocket.Connected)
                {
                    _clientSocket.Close();
                }

                _clientSocket.Dispose();
            }
            catch
            {

            }

            CommunicationState = CommunicationStates.Disconnected;
            OnDisconnected();
        }