~~NOTOC~~ ===== tn_event_set() ===== Функция предназначена для установки битов в битовой маске флага ''evf''. Биты устанавливаются по логическому ИЛИ с параметром-маской ''pattern''. После того как битовая маска флага обновлена, проверяются все задачи, ожидающие флаг. Если условие для запуска одной из задачи соотвествует битовой маске, задача переводится в состояние готовых к выполнению. Если флаг имеет атрибут ''TN_EVENT_ATTR_MULTI'', то в состояние готовых к выполнению переводятся все задачи, условие для запуска которых соответствует битовой маске. Если флаг имеет атрибут ''TN_EVENT_ATTR_CLR'', то битовая маска флага сбрасывается. **Вызов:** TN_RETVAL tn_event_set (TN_EVENT *evf, TN_UWORD pattern); **Разрешен вызов:** \\ В контексте задачи **Параметры функции:** ; ''evf'' : указатель на объект типа флаг ; ''pattern'' : устанавливаемые биты в битовой маске флага. Например, если битовая маска флага до вызова сервиса была равно ''0b0011001101010101'', а параметр ''pattern'' равен ''0b**11**00000000000000'', то битовая маска флага станет равна ''0b**11**11001101010101'' \\ **Возвращаемые значения:** ; ''TERR_WRONG_PARAM'' : некорректное значение параметра (__замечание:__ данный код возврата возможен только в случае использования сервисов с проверкой параметров) ; ''TERR_NOEXS'' : попытка изменения объекта, не являющегося флагом (__замечание:__ данный код возврата возможен только в случае использования сервисов с проверкой параметров) ; ''TERR_WCONTEXT'' : попытка изменения флага в пользовательской критической секции или в прерывании ; ''TERR_NO_ERR'' : успешное выполнение \\ **Пример вызова:** TN_EVENT event_test; tn_event_set(&event_test, 0x8000); \\ ---- [[tnkernel:ref:event:intro#Сервисы управления флагами|К списку сервисов]]