Если вы используете самую последнюю версию ASIHTTPRequest, правильный способ работы с ней (и предотвращения сбоев) заключается в следующем:
Делегат должен сохранить запрос (и запрос не должен сохранять делегата)
Делегат должен сделать следующее, когда делегат уничтожен (или когда вы хотите отменить запрос):
[request setDelegate:nil];
[request cancel];
[request release];
Вы не должны получать сбои таким образом. (Я переписал обработку делегата в ASIHTTPRequest несколько месяцев назад именно для того, чтобы избежать некоторых из этих проблем, и перед тем, как это сделать, я проверил у ребят из Apple, что это правильный способ обработки. на github, хотя с тех пор не было официального релиза - то есть, эти изменения отсутствуют в версии v1.7, поэтому в v1.7 или более ранних версиях вы все равно могли видеть сбои, следуя приведенному выше совету.