gpt4 book ai didi

objective-c - 执行选择器 : afterDelay: without retaining the target?

转载 作者:可可西里 更新时间:2023-11-01 04:22:58 25 4
gpt4 key购买 nike

我有一个类使用 NSURLConnection 打开一个长时间运行的服务器连接。当连接关闭时,在 connectionDidFinishLoading: 或 connection:didFailWithError: 中,我想等待 15 秒,然后重试连接。

目前我正在使用 [self performSelector:@selector(restartConection) withObject:nil afterDelay:15.0];,但这会导致不希望的情况,即当对象被其释放时creator,performSelector 和 NSURLConnections 永久保留“self”,并且它永远不会被释放。

如何在不永久保留对象的情况下执行此操作?非常感谢任何帮助。

谢谢,-Alec

最佳答案

我认为你唯一的选择是发送

[NSTimer cancelPreviousPerformRequestsWithTarget: object];

在某个时候,可能是在释放对象之前。如果没有安排计时器,这是一个空操作,但在性能方面不是免费的。

关于objective-c - 执行选择器 : afterDelay: without retaining the target?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8873384/

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