Цитата(krux @ May 29 2015, 21:00)

если у вас TCP, то предполжу, что:
- закончился сокет-буфер операционки, поскольку клиент отрубился без оповещения (не послал FIN) и TCP-стек ждёт 2 минуты после последнего ACK
Судя по тексту ошибки, вынесенной в название темы, клиент как раз отрубился корректно (т. е. послал FIN и закрыл соединение), возможно, это сделала не сама программа-клиент, а операционка при завершении программы-клиента, закрывая все открытые им файловые дескрипторы и сокеты в том числе. На стороне сервера, получив FIN, стек TCP/IP тоже закрыл соединение, поэтому производить какие-то операции с закрытым дескриптором нельзя, что и видим. Просто это нужно учитывать и обрабатывать корректно, а не молотить и сносить уже освобожденные буфера.
"... часами я мог наблюдать, как люди работают." (М. Горький)