Перевод может содержать ошибки. Читайте первоисточник: Co-Routine States
Назад: [Сопрограммы во FreeRTOS] | Вверх: [Сопрограммы во FreeRTOS] | Вперёд: [Сопрограммы во FreeRTOS] |
Сопрограммы предназначены для использования только на очень маленьких процессорах, которые имеют серьёзные ограничения по объёму ОЗУ, и обычно не используются на 32-битных микроконтроллерах.
Сопрограммы могут находиться в одном из следующих состояний:
Когда сопрограмма фактически выполняется, говорят, что она находится в запущенном состоянии (Запущена). И она в это время использует процессорное время.
Сопрограмма находится в состоянии готовности к выполнению, когда она не заблокирована, но в настоящий момент не запущена. Сопрограмма может находиться в состоянии готовности, потому что:
Говорят, что сопрограмма находится в заблокированном состоянии (Заблокирована), если в данный момент она ожидает временнОго или внешнего события. Например, если сопрограмма использует вызов crDELAY(), она будет блокироваться (переходить в заблокированное состояние) до истечения периода задержки - это временнОе событие. Заблокированные сопрограммы недоступны для планирования.
В настоящий момент (v10.1.1) сопрограммы не имеют состояния, эквивалентного приостановленному состоянию задачи.
Допустимые переходы между состояниями сопрограммы