Форум программистов, компьютерный форум CyberForum.ru

Чтение с сокета - Objective-C

Войти
Регистрация
Восстановить пароль
Другие темы раздела
Objective-C Литература по стандартным фреймворкам http://www.cyberforum.ru/objective-c/thread945024.html
Всем привет! Не так давно начал изучать objective-c. Прочитал книгу С. Кочана "Objective-C 2.0" и несколько статей с разных сайтов, найденных при помощи Google. Теперь я более-менее знаю про концепцию и реализацию ООП в objective-c, немного умею работать с некоторыми классами Foundation - мутабельные/немутабельные строки, мутабельные/немутабельные массивы, мутабельные/немутабельные словари,...
Objective-C DropBox API Всем привет! Столкнулся с задачей внедрить Dropbox в проект, но нашел только самые начальные сведения по использованию апи дропбокса, поэтому возникло пару вопросов для тех, кто сталкивался с ним раньше: 1. В дропбокс можно получить accountInfo, но там не хватает сведений, можно ли как-то получить более подробные данные,например, о количестве свободного места на диске дропбокса, и тп? 2. В... http://www.cyberforum.ru/objective-c/thread944794.html
Objective-C Продолжительный интерактив
Добрый вечер. Есть вопрос. Есть два ответа - да и нет. Как можно проверить дан ли ответ, чтобы текст лейбла можно было поменять содержимым следующего вопроса? Ответ нет должен прибавлять переменной 7, ответ да прибавлять 0. Таким образом, в конце появляется своего рода итоговый результат - рейтинг. Использую IB.
Thread 1: Program received signal "SIGABRT" Objective-C
Добрый вечер. Использую Кокос2Д. Мне надо чтобы спрайт генерировался каждые 2 секунды с позиции другого спрайта(арроу): Пытался реализовать это всякими фор, ду-вайл: pewMove = ; for (int i = 0; i < 1000; i++) { ; sleep(2); }
Objective-C Запятые http://www.cyberforum.ru/objective-c/thread941377.html
Добрый день! Иногда между вызовами методов ставится не точка с запятой, а запятая. С чем это связано?
Objective-C Консультации по objective-c iOS-разработчик с опытом работы в крупной компании дает оперативные консультации по скайпу или е-мейлу по любым вопросам, а также даю уроки с нуля по интересующим темам, в частности: - основные элементы UI в iOS - MVC, СУБД, ООП проектирование архитектуры проекта - фреймворки UIKit, Foundation, CoreGraphics, CoreData - управление памятью в iOS - требования к структуре кода и к синтаксису -... подробнее

Показать сообщение отдельно
di_ingenio
98 / 6 / 1
Регистрация: 14.05.2013
Сообщений: 50

Чтение с сокета - Objective-C

04.09.2013, 11:52. Просмотров 856. Ответов 6
Метки (Все метки)

Есть метод, который читает данные:
Objective-C
1
2
3
4
5
6
7
8
9
10
+ (void) readAnswer{
    while (isReading) {
        len = [inputStream read:buf maxLength:1024];
        if(len > 0 && len<1024) {
            NSMutableData* data=[[NSMutableData alloc] initWithLength:0];
            [data appendBytes: (const void *)buf length:len];
            NSMutableString* s = [[NSMutableString alloc] initWithData:data encoding:NSUTF8StringEncoding];
        }
    }
}
На строчке len = [inputStream read:buf maxLength:1024]; иногда падает EXC_BAD_ACCESS code=2. Понять не могу в чем проблема. Может, кто сталкивался? Или есть предположения?

Подключение идет так:
Objective-C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
+ (void)connect{
    CFReadStreamRef readStream;
    CFWriteStreamRef writeStream;
    CFStreamCreatePairWithSocketToHost(kCFAllocatorDefault, (__bridge CFStringRef)address, 5555, &readStream, &writeStream);
    //CFReadStreamSetProperty(readStream, kCFStreamNetworkServiceType, kCFStreamNetworkServiceTypeVoIP);
    //CFWriteStreamSetProperty(writeStream, kCFStreamNetworkServiceType, kCFStreamNetworkServiceTypeVoIP);
    inputStream = (__bridge NSInputStream *)readStream;
    outputStream = (__bridge NSOutputStream *)writeStream;
    [inputStream setDelegate:self];
    [outputStream setDelegate:self];
    [inputStream scheduleInRunLoop:[NSRunLoop currentRunLoop] forMode:NSDefaultRunLoopMode];
    [outputStream scheduleInRunLoop:[NSRunLoop currentRunLoop] forMode:NSDefaultRunLoopMode];
    [inputStream open];
    [outputStream open];
    isSocketCreate=true;
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 14:23. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru