Добрый день! Столкнулся с проблемой передачи по сокету длинных строк ( 10 000, 20 000 ). Отправляю так:

Код AS3:
socket.writeUTF(JSON.stringify(obj));
принимаю так:

Код AS3:
var str:String = "";
while(socket.bytesAvailable){
str += socket.readUTFBytes(1);
trace(str.length);
}
трейс дает ~8700 и приложение вылетает.
Подскажите как быть?