由于 ASIHTTPRequests 不保留委托,您可能会遇到委托在请求完成之前被释放的情况。
您可以通过以下方式处理这种情况:
[request clearDelegatesAndCancel];
[request release];
但有时您希望请求完成,而您不想取消它。这是实现这一目标的最佳方法吗
//Retain delegate
[request delegate:[self retain]];
-(void): requestFinished: (ASIHTTPRequest *) request{
[self release];
...
}
-(void): requestFailed: (ASIHTTPRequest *) request{
[self release];
...
}