Я имею, создают сокет с CFSocket. Моя программа корректна, но теперь я хочу закрыть сокет (сторона клиента). Существует istruction? Спасибо и жаль о моем английском 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
CFRelease(s)
должен закрыть и уничтожить сокет.
edit (после дополнительного исследования)
Согласно документации, правильный способ закрыть сокет - это сделать его недействительным (аналогично тому, как работает таймер). Поэтому вам нужно сделать следующее:
CFSocketInvalidate(s); //closes the socket, unless you set the option to not close on invalidation
CFRelease(s); //balance the create