private void RaisePortsChangedIfNecessary(SerialPortServiceEventType eventType) { lock (_lock) { string[] availableSerialPorts = GetPortNames(); if (!_previousSerialPorts.SequenceEqual(availableSerialPorts)) { _previousSerialPorts = availableSerialPorts; PortsChanged?.Invoke(this, new PortsChangedArgs(eventType, _previousSerialPorts)); } } }
public PortsChangedArgs(SerialPortServiceEventType eventType, string[] serialPorts) { _eventType = eventType; _serialPorts = serialPorts; }