rtems_task_wake_after(0)
Eric Norum
wenorum at lbl.gov
Tue Jan 29 19:02:31 UTC 2013
rtems_task_wake_after(0) is essentially a yield() operation -- other tasks at the same priority level are given a chance to run.
There are the required checks, locks and code to ensure that rtems_task_wake_after(0) can't turn into rtems_task_wake_after(A_REALLY_LONG_TIME). Or at least there are on a properly written CPU support module….
On Jan 29, 2013, at 10:39 AM, Andrei Chichak <groups at chichak.ca> wrote:
> Can anybody give me an idea as to what rtems_task_wake_after will do with a parameter of 0? I expect that the caller will just be marked ready and start running when it should.
>
> If I get a timer tick in the middle of the call, at that point known as "the worst possible time", is it possible that the underlying delay suddenly underflow and become -1, or 2**32 since it is unsigned, and cause a huge delay rather than a little one?
>
> Thanks,
> Andrei
> (it's -28C and the wind is blowing, yay)
> ---------------------
> Andrei Chichak
>
> Systems Developer
> CBF Systems Inc.
> 4-038 NINT INNOVATION CENTRE
> 11421 SASKATCHEWAN DRIVE
> EDMONTON, ALBERTA
> T6G 2M9
> CANADA
>
> Phone: 780-628-2072
> Skype: andrei.chichak
>
>
>
>
>
>
>
>
> _______________________________________________
> rtems-users mailing list
> rtems-users at rtems.org
> http://www.rtems.org/mailman/listinfo/rtems-users
--
Eric Norum
wenorum at lbl.gov
More information about the users
mailing list