This is a example of showing multiple clients share one connection.
There are one server(Echo) and three clients(Client and Sender, Client has two instances).
Those connections run in separate threads which could cause race conditions potentially. It is the user's responsibility to apply proper locking mechanism if the underlying functions are not reentrant.