RTEMS Self Task Deletion

Joel Sherrill joel.sherrill at oarcorp.com
Wed Sep 27 13:01:50 UTC 2006


Chris Johns wrote:
> Kamaraj P wrote:
>> Please find the sample code.  This may not be directly compliable.
>
> Ok.
>
>> Could you please let me know he can we verify whether self task has 
>> been deleted successfully or not.
>
> Are you sure the tasks you create are able to run ?
>
> Your creation loop will not block for any period of time if its 
> priority is higher than the tasks you create.
>
> Please try the following main:
>
> int main()
> {
>  rtems_task_priority old_priority;
>  rtems_mode          old_mode;
>  rtems_task_set_priority(RTEMS_SELF, 254, &old_priority);
>  rtems_task_mode(RTEMS_PREEMPT,  RTEMS_PREEMPT_MASK, &old_mode);
>  Test();
>  return 0;
> }
>

It main() is a Class API init task, once it returns, there will be a 
fatal error and
the system  will halt.
>> I am not sure checking the return status of
>> rtems_task_delete (RTEMS_SELF) will help. Because the self task context
>> (to be deleted) where you executing print message will not print on 
>> the console.
>> Even before that the task would have been deleted . Please correct me 
>> If I am wrong.
>
> Nothing after the delete self will run.
>
> Regards
> Chris




More information about the users mailing list