3 ms·
Ah, good to know! I'm barely C#-literate, so the Socket docs[0] aren't totally intelligible to me. Somewhere under the hood, though, there must be a common abst
by akshayshah 5y ago
Ah, good to know! I'm barely C#-literate, so the Socket docs[0] aren't totally intelligible to me. Somewhere under the hood, though, there must be a common abstraction sitting in front of the relevant Windows and Linux syscalls - did the libuv stuff just move down a few layers, or is this using something completely different?
Either way, I'd be shocked if this weren't designed top-to-bottom to have excellent performance on Windows.
[0]: https://docs.microsoft.com/en-us/dotnet/api/system.net.sockets.socket?view=net-6.0 https://docs.microsoft.com/en-us/dotnet/api/system.net.socke...
- moogly 5y agoYou can find the Socket partial class files here: https://github.com/dotnet/runtime/tree/main/src/libraries/System.Net.Sockets/src/System/Net/Sockets https://github.com/dotnet/runtime/tree/main/src/libraries/Sy... Socket.cs, Socket.Unix.cs, Socket.Windows.cs, etc... AFAIK, there are no parts of libuv left in .NET Core. That was mostly used to quickly get the framework up and running on Linux.