2010-11-15 38 views
1

我有一个这样的代码的类的存储器,释放其被调用异步方法

ClassA *reference = [[ClassA alloc] init]; 
reference.delegate = self; 
[reference callAsynchMethod]; 

在这里,我调用异步方法。大约需要4-5秒才能执行。那么如何释放ClassA的内存呢?如果我打电话发布或autorelease这崩溃。

谢谢

回答

0

也许你可以使物体在callAsynchMethod开始保留本身,然后松开它本身调用后(我相信),其信号异步工作结束委托方法?然后,在上面的代码中,您可以立即发布它。

编辑

如果你在谈论的NSURLConnection,那么你应该用一个实例变量引用的连接,并通过它releasedealloc实现你的目标。

+0

我想获取URL连接并解析结果。所以callAsynchMethod会触发2个回调方法,通过或失败。所以在那个方法调用之后,我试图释放或自动释放它崩溃的地方。我想如何保留它并在以后发布? – Dilshan 2010-11-15 13:27:11