我已经用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发布于 2010-05-19 04:35:39
CFRelease(s)应该关闭并销毁套接字。
编辑(经过更多的研究)
根据the documentation的说法,关闭套接字的正确方法是使其无效(显然,类似于计时器的工作方式)。所以你需要做的是:
CFSocketInvalidate(s); //closes the socket, unless you set the option to not close on invalidation
CFRelease(s); //balance the createhttps://stackoverflow.com/questions/2860880
复制相似问题