как уже написал выше, всегда нужно быть готовым к тому, что длинное сообщение, отправленное клиентом, может разбиться на несколько. т.е. одно сообщение закончиться на $RE, а следующее начаться на ND. выход для событийной модели: "склеивать" все сообщения по каждому клиенту и проверять его конец на $REND. но наверное это удобней делать на блокируемом сокете в потоке. проще организовать свой клиентский буфер.
__________________
Пишу программы за еду.
__________________
|