OSA : OS_Msg_Accept

OS_Msg_Accept (msg_cb, os_msg_type_var)
OS_Msg_Accept_I (msg_cb, os_msg_type_var)

Принять существующее сообщение. Перед вызовом следует быть уверенным в том, что сообщение присутствует (т.е. дескриптор занят, проверяется сервисом OS_Msg_Check). После выполнения сервиса дескриптор освобождается.

Разрешен вызов:

Параметры функции:

msg_cb Дескриптор указателя на сообщение. Переменная типа OST_MSG_CB
os_msg_type_var Переменная типа OST_MSG; в нее будет помещен указатель на сообщение

Возвращаемое значение:

Нет

Пример вызова:

OST_MSG_CB msg_cb;
 
void Task (void)
{
    OST_MSG msg;
    for (;;) {
        /*...*/
        if (OS_Msg_Check (msg_cb)) {       // Проверяем, есть ли сообщение
             OS_Msg_Accept(msg_cb, msg);   // Принимаем сообщение и обнуляем дескриптор
        }
        /*...*/
    }
}

Old style name

OS_AcceptMsg

См. также