Вход:  Пароль:  
FreeSource: Мусорка/КУдалению/ЗапускПроцесса ...
Free Source | Каталог | Изменения | НовыеКомментарии | Пользователи | Регистрация |

О запуске процесса

При своём запуске процесс должен инициализировать начальное состояние. В эту задачу входит:


Для решения этого вопроса сейчас используется следующий подход:
При своём старте процесс (после получения System Message?::Start Up?) заказывает все необходимые ему датчики.
При заказе (если не указано обратное) процессу сразу приходит сообщение Sensor Message? и тем самым происходит начальная инициализация.
К плюсам такого подхода можно отнести то, что не надо писать специальную функцию инициализации, потомучто используется таже функция обработки, что и в работе.
Я бы сказал, что написать отдельно инициализацию может быть даже полезно. В конце концов инициализация – это не реакция на события /Vitaly Lipatov/
К минусам относится то, что когда запускаются процессы на узле (например при запуске) происходит активный обмен сообщениями между процессами управления и процессами ввода/вывода, отвечающими за датчики. Хотя с другой стороны это нормально, и подобную нагрузку система должна выдерживать.


Если отказаться от функции askValue, то необходимо чётко выработать механизм начальной инициализации. При этом всё равно встаёт вопрос об использовании функции getValue, от которой хотели уйти.
Использовать askValue для заказа категорически нельзя в самой систем. getValue тоже не нужна, поскольку состояния приходят сами. Остаётся обеспечить, чтобы после запуске процесса ему были присланы состояния всех датчиков, и сам он знал, присланы они или нет. Возможно придётся усложнить информацию о датчике – значение, ID и ещё актуализирован он или нет. /Vitaly Lipatov/


Ссылок на эту страницу нет


 
Файлов нет. [Показать файлы/форму]
Комментариев нет. [Показать комментарии/форму]