Pi4J Event Listener автономное приложение - PullRequest
0 голосов
/ 19 сентября 2019

Привет, я хочу создать приложение, которое прослушивает изменения состояния gpio pin на raspberry pi.Как я могу создать приложение Java, которое никогда не заканчивается, но ничего не делает, кроме как слушать.Прослушивание выполняется handleGpioPinDigitalStateChangeEvent() из https://pi4j.com/1.2/usage.html

Теперь я использую пустой цикл while(true) в основном.Я хочу заменить его, чтобы улучшить производительность, потому что он работает на старом Raspberry Pi.

Спасибо, ребята!

1 Ответ

0 голосов
/ 19 сентября 2019

Один из вариантов может быть, вместо того, чтобы пустой цикл while работать бесконечно, вы можете получить пользовательский ввод, используя сканер внутри while, как показано ниже,

Scanner scanner = new Scanner (System.in);
boolean run = true;
while(run) {  
String userIP = scanner.next();
if(userIP.equals("exit"))
  run = false;
}

Приведенный выше код не будет запускать цикл бесконечно(что, возможно, повлияло на производительность), вместо этого запустите и ожидает ввода пользователя в консоли.Я не делал никакого сравнения производительности, но по логике должен быть лучше, чем бесконечный цикл.

...