tags:

views:

119

answers:

1

Does anyone know what Socket.UseOnlyOverlappedIO does, and if so, does it affect performance? There seems to be no real explanation on MSDN.

Thanks in advance.

+1  A: 

It causes the socket to used Overlapped I/O instead of blocking. On single processor/single core systems, this can lead to some performance benefits, but it tends to be less useful on multiprocessing systems.

Reed Copsey
I'm guessing it's useless if I'm already using asynchronous sockets...
Fauxide
Well, if you're deploying on a dual+ core machine, and using asynchonous sockets, it's useless. On a single core, single processor machine, it's (theoretically) slightly faster for the asynchronous operations.
Reed Copsey
I probably wouldn't bother, though, since it's pretty much an edge case now, on nearly all hardware.
Reed Copsey
Do you have a link to something official that explains that? I would have expected the async operations to be using overlapped I/O anyway.
Len Holgate
The Wikipedia article discusses it, but otherwise, search for OVERLAPPED on MSDN - there's quite a bit of discussion there.
Reed Copsey
Reed, actually I meant something official for "f you're deploying on a dual+ core machine, and using asynchonous sockets, it's useless. On a single core, single processor machine, it's (theoretically) slightly faster for the asynchronous operations"... I know what Overlapped I/O is...
Len Holgate