首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >我想关闭一个CFSocket

我想关闭一个CFSocket
EN

Stack Overflow用户
提问于 2010-05-19 04:28:07
回答 1查看 3K关注 0票数 8

我已经用CFSocket创建了一个套接字。我的程序是正确的,但是现在我想关闭套接字(客户端)。有指令吗?感谢并为我的英文XP道歉

我的代码:

代码语言:javascript
复制
CFSocketRef s;
s = CFSocketCreate(
        NULL, 
        PF_INET,
        SOCK_STREAM, 
        IPPROTO_TCP, 
        kCFSocketDataCallBack, 
        AcceptDataCallback, 
        &context);
...
CFSocketConnectToAddress(s, address, 0);
...
//here i wanna close the socket
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2010-05-19 04:35:39

CFRelease(s)应该关闭并销毁套接字。

编辑(经过更多的研究)

根据the documentation的说法,关闭套接字的正确方法是使其无效(显然,类似于计时器的工作方式)。所以你需要做的是:

代码语言:javascript
复制
CFSocketInvalidate(s);  //closes the socket, unless you set the option to not close on invalidation
CFRelease(s);  //balance the create
票数 17
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2860880

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档