Photo by Evi Radauscher on Unsplash

Java sockets I/O: blocking, non-blocking and asynchronous

Introduction