Threads block on I/O (that is enters the waiting state) so that other threads may execute while the i/oOperation is performed.