Я передаю достаточно большое изображение по локальной сети с iPhone на Mac, используя класс AsyncSocket. В заголовке объявлен метод делегата didReadData, как показано ниже:
/**
* Called when a socket has completed reading the requested data into memory.
* Not called if there is an error.
**/
- (void)onSocket:(AsyncSocket *)sock didReadData:(NSData *)data withTag:(long)tag;
В нем говорится, что этот метод будет вызван, когда сокет завершит чтение данных. Однако этот метод вызывается много раз, каждый раз увеличивая длину данных. Как я должен узнать, когда загрузка завершена? Я должен отправить длину данных в первых нескольких байтах?