gpt4 book ai didi

iphone - NSURLConnection 启动 + 自动释放

转载 作者:塔克拉玛干 更新时间:2023-11-02 09:51:41 25 4
gpt4 key购买 nike

在我的应用程序中,我必须进行 HTTP 调用并且我对 Web 服务的响应结果不感兴趣。所以我想知道是否可以创建一个连接并启动它并自动释放它而不导致内存泄漏。

NSURLConnection* connection = [[NSURLConnection alloc] initWithRequest:request delegate:nil];
[connection start];
[connection autorelease];

垃圾收集是否有可能在进行 HTTP 调用之前销毁连接对象?

最佳答案

这是个好问题。即使没有明确说明 NSURLConnection 由操作系统保留,连接请求显然被添加为运行循环的源,然后就这样被保留。在任何情况下,您最好通过观察连接终止来为请求设置最小委托(delegate)

connectionDidFinishLoading:
然后释放你的连接对象,如文档的这一部分所写:

最后,如果连接成功下载请求,则代理会收到 connectionDidFinishLoading: 消息。委托(delegate)将不会收到连接的进一步消息并且可以释放 NSURLConnection 对象。

出于同样的原因,您应该观察到由于

connection:didFailWithError:
的错误而导致的连接结束。 .

关于iphone - NSURLConnection 启动 + 自动释放,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7037566/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com