Я хочу закрыть CFSocket - PullRequest
       14

Я хочу закрыть CFSocket

8 голосов
/ 19 мая 2010

Я создал сокет с CFSocket. Моя программа верна, но теперь я хочу закрыть сокет (на стороне клиента). Есть иструкция? Спасибо и извините за мой английский XP

Мой код:

CFSocketRef s;
s = CFSocketCreate(
        NULL, 
        PF_INET,
        SOCK_STREAM, 
        IPPROTO_TCP, 
        kCFSocketDataCallBack, 
        AcceptDataCallback, 
        &context);
...
CFSocketConnectToAddress(s, address, 0);
...
//here i wanna close the socket

1 Ответ

17 голосов
/ 19 мая 2010

CFRelease(s) должен закрыть и уничтожить сокет.

edit (после еще нескольких исследований)

Согласно документации , правильный способ закрыть сокет - сделать его недействительным (по-видимому, похоже на работу таймера). Итак, вы захотите сделать:

CFSocketInvalidate(s);  //closes the socket, unless you set the option to not close on invalidation
CFRelease(s);  //balance the create
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...