Задание приостановить и возобновить в ОСРВ - PullRequest
0 голосов
/ 12 мая 2019

Я использую FreeRTOS и хочу приостановить текущую запущенную задачу, если какое-либо условие вызвано другой задачей, и продолжить текущую задачу только после завершения внешней запускаемой задачи.

Псевдокод (ничего не объясняется, кромедля справки):

Текущая задача -:

task_a()
{
    while (1)
    {
        if (condition satisfied)
        {
            execute code
        }
        vTaskDelay (sometime);
    }
}

Другая задача

Event occurred
pause task_a
execute something
resume task_a

Я думаю xEventGroupWaitBits или уведомление о задаче должен работать, но я не уверен, какой из них использовать, и псевдокод для того же, пожалуйста, дайте мне знать, как это реализовать?

...