It seems that System.net.Sockets had some performance issues in multi-threaded applications in previous versions of .Net. and that SocketAsyncEventArgs was (at least partially) created to eliminate them. However, it seems that using SocketAsyncEventArgs and the right solution is a non-trivial process, as shown in this article .
Ive looked at some frameworks that can be used at http://nitoasync.codeplex.com/ and http://supersocket.codeplex.com/
If I were looking for maximum performance in a TCP application using managed code, should I write in SocketAsyncEventArgs? and risk finding performance issues in production that cannot be reproduced during testing, or should I use one of the above frameworks ?.
I have not been working with C # for a long time. Most of my experience was in C ++, but I have no experience in this area. I am using .Net 4
Canacourse
source share