I am aware that one can run async_send and async_receive operations concurrently on TCP and UDP sockets. But what is the expected behavior in these situations:
- calling two async_send operations concurrently on an UDP socket.
- calling two async_receive operations concurrently on an UDP socket.
- calling two async_send operations concurrently on a TCP socket.
- calling two async_receive operations concurrently on a TCP socket.
I'm mainly interested in the first case; since UDP doesn't necessarily preserve the order of sent packets, I don't care much if they are sent in order different from the one async_send was invoked.