The code for USOCKET is much smaller and simpler than IOLib, including dependencies. IOLib uses CFFI bindings for Linux features that are not available in some * BSDs, for example.
All things being equal, a minimal source code is always preferable, because it means fewer errors, because it is easier to understand and crack. Simplified code is faster debugged and deployed more easily.
In addition, both of them seem to be approximately the same: both of them provide kqueue / select to handle multiple connections in the same thread. I'm not sure about more advanced features like passing a unix file descriptor to a socket.
I would say that if you like Linux, go with IOLIB or USOCKET, if you are targeting Linux and / or * BSD or other commercial operating systems or want it to be simple and stupid, go to USOCKET.
thodg
source share