Я создал приложение, которое отправляет/принимает сообщения с помощью COM-порта. Для этой цели я использую rxtx lib. Когда приложение запускается, я открываю COM-порт как:Является COM-портом, открытым в эксклюзивном режиме
String comportidentifier = "/dev/ttyS0";
CommPortIdentifier portIdentifier = null;
portIdentifier = CommPortIdentifier.getPortIdentifier(comportidentifier);
if (portIdentifier.isCurrentlyOwned()) {
JOptionPane.showMessageDialog(null, "port in use");
} else {
SerialPort serialPort = (SerialPort) portIdentifier.open("ReadComPort", 200);
}
И закрываю его, когда программа заканчивает работу.
Неожиданно я обнаружил, что мой состав (тот, который я открыл) передает какую-то странную команду, которую мой код не отправляет. Я использую несколько библиотек в своем коде, и я не передаю им переменную com port. Единственное описание состоит в том, что что-то в системе alsow открыло порт и отправляет команду. Но возможно ли это, если я уже открыл COM-порт? Я полагаю, что, когда я открыл порт, никто не может этого сделать, пока я его не закрою. Как описать эту ситуацию?
Когда у меня есть порт изменений в/dev/ttyS1, непредвиденная команда не была передана.