dataWithContentsOfURL:
предназначен для блокировки до истечения времени ожидания или до получения полного ответа. Вы, кажется, заинтересованы в прерывании фонового потока, когда связанный с ним вид освобождается. Эти факты принципиально расходятся.
Если вы хотите как можно быстрее завершить запрос, когда ваш объект исчезает, это можно сделать, выполнив асинхронный запрос с NSURLConnection
и cancel
, указав его в вашем методе dealloc
. Если он не отменен до получения ответа, вы получите обратный вызов на connectionDidFinishLoading:
вашего делегата, после чего вы сможете восстановить UIImage
из полученных данных.