У меня есть встроенное консольное приложение, которое создает с помощью Qt, C++. Я использую Nanopi Fire (FriendlyARM) для моего устройства с Linux-аркой. Я подключаю его gpio к реле для включения и выключения ламп в моей комнате. Также я написал мобильное приложение для подключения устройства с розеткой. Когда я запускаю свою программу из замазки ./SmartKeyC работает, и я могу переключать лампы с помощью кнопок моего мобильного приложения, и все они в порядке.
Но когда я запускаю программу для автоматического запуска, все функции выполняют свои задачи с задержкой в 2-3 секунды.
Я использовал эту ссылку для создания автозапускаемого приложения. это мой сценарий:

#! /bin/sh
### BEGIN INIT INFO
# Provides:          <your script name>
# Required-Start:    $all
# Required-Stop:
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: Manage my cool stuff
### END INIT INFO

PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/opt/bin:/root

. /lib/init/vars.sh
. /lib/lsb/init-functions
. /root/
# If you need to source some other scripts, do it here

case "$1" in
  start)
    log_begin_msg "Starting my super cool service"
# do something
    /root/SmartKeyC
    log_end_msg $?
    exit 0
    ;;
  stop)
    log_begin_msg "Stopping the coolest service ever unfortunately"

    # do something to kill the service or cleanup or nothing

    log_end_msg $?
    exit 0
    ;;
  *)
    echo "Usage: /etc/init.d/<your script> {start|stop}"
    exit 1
    ;;
esac  

и после обновления rc у меня есть:

root@NanoPi2-Fire:/etc# find -iname "*SmartKeyScript"
./init.d/SmartKeyScript
./rc0.d/K01SmartKeyScript
./rc1.d/K01SmartKeyScript
./rc2.d/S03SmartKeyScript
./rc3.d/S03SmartKeyScript
./rc4.d/S03SmartKeyScript
./rc5.d/S03SmartKeyScript
./rc6.d/K01SmartKeyScript

В чем проблема?
Почему, когда я запускаю свое приложение в замазке, все работает хорошо, но когда мое приложение запускается из автозапуска, оно имеет задержку для каждого вызова функции?

0