Brandon Black a écrit :
The thing we all seem to agree on is that eventloops
beat threads within one process, but the thing we disagree on is
whether it's better to have the top-level processes be processes or
threads.
I'm really not so sure about the former. The ICE system developers
[http://www.zeroc.com] which is a CORBA like application made some
benchmarks and concluded that the one thread per socket is the most
efficient. It is also used in one the most efficient CORBA
implementation omniORB [http://omniorb.sourceforge.net/].
This is probably also because the application can't be easily turned
into an event loop program because the "callbacks" may have a long
execution time. These would have to be turned into state machines using
the timer to go from one state to the other. This is weird and doesn't
seem at all more efficient than a plain basic thread. Users would
dislike it.
My impression is that the discussion is biased by a particular use case
pattern in mind and a focus nearly exclusive on performance.
But as you know, when you have a hammer, everything looks like a nail ;).
Ch. Meessen
_______________________________________________
libev mailing list
[email protected]
http://lists.schmorp.de/cgi-bin/mailman/listinfo/libev