Browse thread
async networking
[
Home
]
[ Index:
by date
|
by threads
]
[ Message by date: previous | next ] [ Message in thread: previous | next ] [ Thread: previous | next ]
[ Message by date: previous | next ] [ Message in thread: previous | next ] [ Thread: previous | next ]
Date: | 2006-02-07 (17:45) |
From: | Bardur Arantsson <spam@s...> |
Subject: | Re: async networking |
skaller wrote: > On Mon, 2006-02-06 at 19:34 +0100, Bardur Arantsson wrote: > >> However, if you want very high-performance networking >> you'd be better off with something closer to the metal, i.e. something >> like a libevent wrapper > > Argg no. Libevent isn't a library, it doesn't control invert. > It is a monolithic framework. Therefore it is not very useful because > your code will no longer be composable. In particular, > there is no way to compose two such frameworks, for example > you cannot use it with an event driven GUI framework. > Note that I said 'high-performance'. Point #1: select() and anything based on it (I believe Equeue still is though I haven't looked at it for quite a while) is woefully inadequate for high performance I/O except in very specific circumstances. Point #2: It is not customary for UI applications to require particularly high-performance I/O, thus rendering the non-composability issue moot. I'm _not_ recommending libevent for general use, just if you want high performance with an easily switchable backend implementation. Cheers, -- Bardur Arantsson <bardurREMOVE@THISimada.sdu.dk> <bardurREMOVE@THISscientician.net> - Your Honor, let the record reflect that the Defense just grazed my Johnson. John, 'Ally McBeal'