[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]
Re: [Libevent-users] Asynchronous writes in the event loop model
On Mon, Feb 06, 2012 at 01:46:59PM -0800, Adrian Chadd wrote:
> Hi,
>
> the standard trick:
>
> * designate one thread as "signals here" and block signals on all other threads;
> * use pipes for sending signals between threads (ie, to wake them up);
> * wish that kqueue and similar methods were portable.
Do Solaris event ports support signal queueing? Edge-triggered events?
Most threading and signaling issues are far easier to handle, in my
experience, once you take Windows out of the equation. *BSD, Linux, and
Solaris pretty much constitute the entire market for newer software if you
exclude Windows.
And using edge-triggered signaling you could theoretically have a massively
multi-threaded, shared event queue without any mutexes whatsoever. You'd
have to ditch Windows or, conversely, ditch *BSD/Linux/Solaris. But you
can't really have both unless you want your abstraction layer dwarfing the
size of your actual application, along with the concomitant bugs.
***********************************************************************
To unsubscribe, send an e-mail to majordomo@xxxxxxxxxxxxx with
unsubscribe libevent-users in the body.