rtems_status_code rtems_task_start( rtems_id id, rtems_task_entry entry_point, rtems_task_argument argument );
RTEMS_SUCCESSFUL
- ask started successfully
RTEMS_INVALID_ADDRESS
- invalid task entry point
RTEMS_INVALID_ID
- invalid task id
RTEMS_INCORRECT_STATE
- task not in the dormant state
RTEMS_ILLEGAL_ON_REMOTE_OBJECT
- cannot start remote task
This directive readies the task, specified by id
, for execution
based on the priority and execution mode specified when the task
was created. The starting address of the task is given in
entry_point
. The task's starting argument is contained in
argument. This argument can be a single value or used as an index into an
array of parameter blocks. The type of this numeric argument is an unsigned
integer type with the property that any valid pointer to void can be converted
to this type and then converted back to a pointer to void. The result will
compare equal to the original pointer.
The calling task will be preempted if its preemption mode is enabled and the task being started has a higher priority.
Any actions performed on a dormant task such as suspension or
change of priority are nullified when the task is initiated via
the rtems_task_start
directive.
Copyright © 1988-2008 OAR Corporation