А ты не думал что тебе надо считывать определенное число, но из потока тебе может приходить за раз либо недостаточное число данных, либо избыточное?
приходит всегда одно число.
я пробовал читать по байту, с нуля до 5мб, до 3мб, с отступом в 1 мб / 2 мб и тд.
но оно всегда возвращает 144000 или 165000 байта