This is the mail archive of the
ecos-discuss@sources.redhat.com
mailing list for the eCos project.
Re: select() and signal's
But it still not works.
Both threads have an equal priority.
I carefully has looked on cyg_sigqueue() code.
And I don't understand as cyg_sigqueue() function will wake
the blocked in select() thread.
The cyg_sigqueue() function calls only signal_sigwait.broadcast().
But the blocked thread sleeps on other condition variable - selwait,
but not on signal_sigwait.
Thanks in advance.
--
Boris Guzhov,
St.Petersburg, Russia
> > In Linux it works, but in eCos it not works.
>
> It is meant to work in eCos. It's meant to return -1 and set errno to
> EINTR. Are you sure thr1 isn't being pre-empted for any other reason, e.g.
> if thr2 is higher priority.
>
> Try setting a breakpoint on the function cyg_sigqueue and debugging it.
>
> jifl
> --
> Red Hat, Rustat House, Clifton Road, Cambridge, UK. Tel: +44 (1223) 271062
> Maybe this world is another planet's Hell -Aldous Huxley || Opinions==mine
>