@DiGiTAll

Как запускать консольную команду дважды в секунду?

Необходимо запускать одну консольную команду каждые 500 мс. Как это лучше сделать? (Debian 9)
Демоны? Системные службы?

Помогите, пожалуйста, примером или ссылкой.
  • Вопрос задан
  • 139 просмотров
Пригласить эксперта
Ответы на вопрос 3
Zoominger
@Zoominger
System Integrator
Кидайте в Cron:
* * * * * ( sleep 30 ; /path/to/executableскрипт параметры)

Это один из вариантов.
Ответ написан
IvanTheCrazy
@IvanTheCrazy
Ну тогда уж вот так:

* * * * * /path/to/anotherscript

а ваш anotherscript будет вида

#!/bin/bash
for i in {1..120}
do
  yourcommand
  sleep 0.5
done


Т.е.:
- крон запустит скрипт раз в минуту
- скрипт запустит ваше приложение 120 раз за эту минуту, т.е. дважды в секунду

Главное только чтобы это выполнится успело
Ответ написан
usdglander
@usdglander
Yipee-ki-yay
С такой периодичностью лучше написать скрипт с бесконечным циклом внутри и в нём отсчитывать 500 мс.
while (true) {
    //Тут пишутся действия, которые необходимо выполнить

    usleep(500);
}

Только внимательнее следите за памятью. На php очень просто поймать утечку памяти. И вообще он не очень хорошо приспособлен для таких задач, но раз уж в тэгах указан...
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы