~~NOTOC~~
===== tn_sys_context_get() =====
Функция возвращает текущий контекст системы. Сервис можно использовать для проверки текущего контекста в функции, которая может вызываться как из контекста задачи, так и из пользовательского прерывания.
**Вызов:**
TN_CONTEXT tn_sys_context_get (void);
**Разрешен вызов:** \\
В контексте задачи, в прерывании, в пользовательской критической секции
**Параметры функции:**
нет
**Возвращаемые значения:**
; ''TN_CONTEXT_TASK'' : Контекст задачи
; ''TN_CONTEXT_SYS_INT'' : Системное прерывание
; ''TN_CONTEXT_CRITICAL'' : Пользовательская критическая секция
\\
**Пример вызова:**
void foo (void)
{
TN_CONTEXT context;
context = tn_sys_context_get();
if (context == TN_CONTEXT_TASK)
{
tn_sem_signal(&sem);
}
else if (context == TN_CONTEXT_SYS_INT)
{
tn_sem_isignal(&sem);
}
}
\\
----
[[tnkernel:ref:sys:intro#Системные сервисы|К списку сервисов]]