[Mono-dev] Fundamental performance problems with Mono
James Mansion
james at mansionfamily.plus.com
Sun Jan 10 05:19:10 EST 2010
damageboy wrote:
> By this, I mean that a fundamental difference you'll find in the Linux world
> from the Windows world is that there is no async socket API for Linux. This
> is a "limitation" (if you want to call it like that) of the Linux kernel,
> and in no way related to mono.
>
That's a little unfair - things are just done differently. You can
implement async IO quite easily on
a POSIX kernel albeit the kernel does not have so much context
information and can't do some
optimisations. Personally I'd look at embedding something on top of
libev. If you want an example
of implementing aio on select/poll etc then look at boost::asio (tho,
even as a C++ coder, the
implementation made me want to lie down and rest for a while).
(And POSIX does have aio on some platforms: and some of those even
support reasonable
parallelism with sockets. But not all. You'd probably be better using
libev or libevent and letting
it hide the select/poll/kqueue/event port differences)
More information about the Mono-devel-list
mailing list