====== OSA : OS_IsInCriticalSection ======
**bool OS_IsInCriticalSection ()**\\ 
=== ===
Возвращает //''true''//, если одна из задач находится в критической секции.
=== Разрешен вызов: ===
Везде
=== Параметры функции: ===
Нет
=== Возвращаемое значение: ===
{| class = "fpl"
|-
|//''false''//
| Критическая секция не активна
|-
|//''true''//
| Одна из задач находится в критической секции
|}
=== Пример вызова: ===
void interrupt isr (void)
{
    if (TMR2IF) {
        TMR2IF = 0;
        OS_Timer();
    }
}
void main (void)
{
    /*...*/
    for (;;)
    {
         OS_Sched();
         if (OS_IsInCriticalSection () && TMR2IF) {
              TMR2IF = 0;
              OS_Timer();     // Т.к. в критической секции прерывания запрещены,
                              // мы таймер обрабатываем отдельно
         };
        /*...*/
    }
}
=== См. также ===
----
  * [[osa:ref:services:alphabetical|Алфавитный указатель]]
  * [[osa:ref:services:brieflist|Все сервисы]]
~~UP~~