Are there any standard-defined guarantees for TCP network sockets used by multiple threads to do IO on them? Specifically, will multiple write() or send() calls on the same socket execute serially (i.e. not interfere with each other) and blocking (until completion) even for large buffer sizes? What about read() / recv()?