> while (1) do
> {
> sentence1();
> sentence2();
> sentence3();
> pthread_wait_np();
> }
> Imagine that the execution is in "sentence1" and other task suspends
> this one with "pthread_suspend_np". Will this task stop right there or
> it will execute "sentence1", "sentence2", "sentence3" and stop in
> "pthread_wait_np"?. Many thanks.
It can stop anywhere, including the interval between
sentence2 and sentence3. If you need to make
sure it only stops at pthread_wait_np, you need to use something like
while (1) do
{
sentence1();
sentence2();
sentence3();
if (need_stop) {
pthread_suspend_np(pthread_self());
}
pthread_wait_np();
}
and set need_stop in another task.
Michael.
-- [rtl] ---
To unsubscribe:
echo "unsubscribe rtl" | mail [EMAIL PROTECTED] OR
echo "unsubscribe rtl <Your_email>" | mail [EMAIL PROTECTED]
---
For more information on Real-Time Linux see:
http://www.rtlinux.org/rtlinux/