Это старая версия документа.


A PCRE internal error occured. This might be caused by a faulty plugin

====== task ====== Управляет организацией процесса выполнения модулей. Задача - это отдельный поток (thread), у которого есть список модулей, которые требуется выполнять с заданной периодичностью. ==== Класс модуля ==== promauto.jroboplc.plugin.**task.TaskModule** ==== task.conf.yml ==== <code yaml> module.task0: enable: on period: 100 modules: di1 do1 module.task1: enable: on period: 1000 modules: UVKR tagsaver </code> ==== Описание ==== **module.<name>** - название модуля (см. [[[[doc:jroboplc:notes:how_to_name_modules]]) **enable** - on/off - разрешение работы модуля **period** - период выполнения одного цикла, мс **modules** - список имен модулей, команды синхронизации и задержки. При подаче команды start все модули плагина task инициализируются и создают отдельные потоки, в который с заданной периодичность вызываются модули в указанной последовательности. После подачи команды stop потоки уничтожаются. ==== Синхронизация ==== Модули задач (или потоки) могут работать как независимо друг от друга, так и синхронно. Для этого каждая задача имеет внутреннюю переменную, доступную для чтения и записи другими задачами. Команды работы с данной переменной помещаются в список ''modules'': **set(value)** - установить значение собственной переменной **set(task, value)** - установить значение переменной другой задачи Команды установки могут принимать только положительные значения (от 0 включительно и выше). Изначально переменные инициализируются в 0. **wait(value)** - ожидание заданного значения собственной переменной **wait(task, value)** - ожидание заданного значения переменной другой задачи Ожидание чужой переменной длится не более заданного времени period, если period > 0. При превышении времени ожидания (тайм-ауте), в переменную записывается значение -1, ожидание прекращается, задача переходит к выполнению следующей позиции в списке modules. Если же period равен 0, ожидание длится неопределенно долго. Ожидание собственной переменной всегда длится неопределенно долго. В случае об

doc/jroboplc/modules/task.1447583087.txt.gz · Последние изменения: 2015/11/15 13:24 — denis
Driven by DokuWiki Recent changes RSS feed Valid CSS Valid XHTML 1.0