Программирование сокетов в Mac / Cocoa - PullRequest
1 голос
/ 11 августа 2011

В моем приложении нам нужно иметь сокетную связь с сервером, и через поиск в Google и документацию Apple натолкнулся на следующее

1 - NSStream Class 2 - CFSocket

Янемного сбит с толку, похоже, NSStream - это оболочка над классом CFSocket, более того, мне нужно иметь безопасное соединение через сокет, и я продолжил использовать поток NSStream / NSInputStream и NSOutput,

Все приложение ранее использовало OpenSSLи теперь он должен идти с Native SSL, может кто-нибудь помочь мне указать правильное направление,

- Если я продолжу работу с NSStream или какой-либо другой фреймворк доступен в Какао,

-если есть NSStream, у него есть опрос и цикл выполнения, который является наиболее предпочтительным,

- есть ли какой-нибудь пример, на который я могу сослаться,

Заранее спасибо

1 Ответ

0 голосов
/ 11 августа 2011

Использование NSStream, вероятно, является лучшим решением, так как вам не нужно заботиться о каждой детали.Кроме того, способ выполнения цикла лучше, так как он проверяет, есть ли данные для чтения, поэтому вам не нужно это делать.

Как правило, это хорошая идея - использовать доступную абстракцию наивысшего уровня и погружаться только нижеУровень, если вам действительно нужно.Сетевое программирование иногда бывает сложно сделать правильно и быстро, и Cocoa отлично справится с этим.

См. Сообщение в блоге NSStream: TCP и SSL о том, как установитьSSL соединение с NSStream.Хотя он нацелен на iOS, в этом случае он должен применяться в равной степени к Mac OS X, так как я не заметил ни одного специфичного для iOS кода или концепции в блоге.

...