Exemplo n.º 1
0
        public async override void Disconnect()
        {
            if (State == States.Connected)
            {
                await _port.CloseAsync();

                _reader.Dispose();
                _reader = null;
                _writer.Dispose();
                _writer = null;
                State   = States.Disconnected;
            }
        }
Exemplo n.º 2
0
        public async Task CloseAsync()
        {
            await _serialPort.CloseAsync();

            _serialPort.Dispose();
            _serialPort = null;

            IsConected = false;
        }
Exemplo n.º 3
0
        public async Task DisconnectAsync()
        {
            lock (this)
            {
                if (!Connected)
                {
                    AddStatusMessage(StatusMessageTypes.Warning, "Can not disconnected - Not Connected");
                    return;
                }

                Mode      = OperatingMode.Disconnected;
                Connected = false;

                MachinePosition   = new Vector3();
                WorkspacePosition = new Vector3();

                Status                  = "Disconnected";
                DistanceMode            = ParseDistanceMode.Absolute;
                Unit                    = ParseUnit.Metric;
                Plane                   = ArcPlane.XY;
                UnacknowledgedBytesSent = 0;

                lock (_queueAccessLocker)
                {
                    _toSend.Clear();
                    _toSendPriority.Clear();
                    _sentQueue.Clear();
                }
            }

            if (_port != null)
            {
                await _port.CloseAsync();

                AddStatusMessage(StatusMessageTypes.Info, "Closed Serial Port");
                _port = null;
            }

            if (_socketClient != null)
            {
                await _socketClient.CloseAsync();

                _socketClient.Dispose();
                _socketClient = null;
            }

            if (this._cancelSource != null)
            {
                _cancelSource.Cancel();
                _cancelSource = null;
            }

            AddStatusMessage(StatusMessageTypes.Info, "Disconnected");
        }
        public async Task CloseAsync()
        {
            _isActive = false;
            _cancellationTokenSource.Cancel();
            await _serialPort.CloseAsync();

            _serialPort.Dispose();
            _serialPort = null;

            IsConnected = false;
        }
Exemplo n.º 5
0
        public async override Task DisconnectAsync()
        {
            if (State == States.Connected)
            {
                await _port.CloseAsync();

                if (_reader != null)
                {
                    _reader.Dispose();
                    _reader = null;
                }

                if (_writer != null)
                {
                    _writer.Dispose();
                    _writer = null;
                }
                State = States.Disconnected;
                InvokeDisconnected();
            }
        }