Dan Sugalski <[EMAIL PROTECTED]> wrote:

>>I know that. The current scheme is safe WRT these problems. A signal
>>originates from the signal handler, incrementing a sig_atomic_t variable
>>per signal.

> That doesn't work.

??? It's one of the few safe actions what you can do in an interrupt
handler. WTF should that not work.

> ...Besides requiring an aligned atomic word per
> interrupt source, it requires something to scan those words

Why aligned? If you can't set a sig_atomic_t var in a signal handler
and test that outside, you are hosed anyway. What is the problem with
that? How do you do it? The io_thread wakes up on EINTR and tests the
sig_atomic_t sighup or such, what's wrong?

> That's pretty horribly platform-dependent.

Of course. I did describe signals. They are platform-dependent. Win32
don't have much (and no usable) signals at all. This scheme is for
unixish plaftforms. Win32 will have a different one. OS X maybe too.

This is an implementation of events on a specific platform.

The whole event system is platform-dependent in the guts.

>>There's always a choice. Please have a look at the current code.

> I have. It's fundamentally broken pretty much everywhere. We just
> don't trigger off the broken behaviour yet.

This "pretty much everywhere" is e.g.: Thanks for your detailed
analysis.

leo

Reply via email to