Ejemplo n.º 1
0
        public Task DisconnectAsync()
        {
            try
            {
                _mitar.Stop();
                _workerController.CloseWorker(_syncWorker);
                Thread.Sleep(100);

                _mitar = null;
                _stream?.Close();
                _stream?.Dispose();
                _stream = null;
                _tcpClient?.Close();
                _tcpClient?.Dispose();
                _tcpClient = null;
                return(Task.CompletedTask);
            }
            catch (SocketException e)
            {
                IsConnected = false;
                throw new DeviceConnectionException("Ошибка отключения от кардиомонитора", e);
            }
            catch (ObjectDisposedException e)
            {
                IsConnected = false;
                throw new DeviceConnectionException("Ошибка отключения от кардиомонитора", e);
            }
            catch (Exception e)
            {
                IsConnected = false;
                throw new DeviceProcessingException("Ошибка отключения от кардиомонитора", e);
            }
        }
Ejemplo n.º 2
0
 public void Dispose()
 {
     _mitar?.Stop();
     _mitar?.Dispose();
     _workerController.CloseWorker(_syncWorker);
     _stream?.Close();
     _stream?.Dispose();
     _tcpClient?.Close();
     _tcpClient?.Dispose();
 }