rtapi_task_pause, rtapi_task_resume - pausa y reanuda las tareas en tiempo real
void rtapi_task_pause(int task_id) |
||
void rtapi_task_resume(int task_id) |
task_id
Un identificador de tarea RTAPI devuelto por una llamada anterior a rtapi_task_new.
rtapi_task_resume inicia una tarea en modo de ejecución libre. La tarea debe estar en el estado "en pausa".
Una tarea de ejecución libre se ejecuta continuamente hasta que:
1) |
Está precedida por una tarea de mayor prioridad. Se reanudará tan pronto como la tarea prioritaria mas alta libera la CPU. | ||
2) |
Se llama a una función de bloqueo, como rtapi_sem_take. Se reanudará cuando la función desbloquea. | ||
3) |
rtapi_task_pause la devuelve al estado "en pausa". Puede ser llamads desde el código de inicio/limpieza, y desde dentro de las tareas en tiempo real. |
rtapi_task_pause hace que una tarea detenga la ejecución y cambie al estado "en pausa". La tarea puede ser de ejecución libre o periódica. Tenga en cuenta que rtapi_task_pause se puede llamar desde cualquier tarea o desde init o código de limpieza, no solo de la tarea que se va a pausar. La tarea reanudará la ejecución cuando rtapi_task_resume o se llama a rtapi_task_start (dependiendo de si se trata de una tarea de ejecución libre o periódica).
Se puede llamar desde el código de inicio/limpieza y desde dentro de las tareas en tiempo real.
Un código de estado RTAPI.
rtapi_task_new(3rtapi), rtapi_task_start(3rtapi)