2012-04-25 76 views
0

当我从任何其他方法调用[self MethodName]时,它的工作。在requestFinished方法中调用方法时崩溃?

但在调用“requestFinished”时,其崩溃。

- (void)requestFinished:(ASIHTTPRequest *)request 
{ 

    [self MethodName]; 
} 

[ClassName MethodName] - 发送到释放实例的消息。

有任何建议。

谢谢你的时间。

回答

4

在执行异步调用requestFinished之前释放您的对象(self)

检查是否保持对对象的引用足够长 - 如果创建对象时没有保留引用,它将在循环结束时释放,并且稍后调用requestFinished方法时,对象不会存在了。

+0

你是冠军。你能告诉我该怎么做才能解决这个问题? – iDilip 2012-04-25 07:46:28

+0

你应该自己保留什么时候开始,然后你完成或失败,再次发布 – adali 2012-04-25 07:51:34

+0

或者使对象成为一个类的类变量,它仍然存在,就像你的视图控制器或者一个单身人士一样 – TheEye 2012-04-25 08:43:46

相关问题