performSelector: afterDelay: без сохранения цели?

У меня есть класс, который использует NSURLConnection для открытия длительного соединения с сервером. Когда соединение закрывается, либо в connectionDidFinishLoading:, либо в connection: didFailWithError:, я хочу подождать 15 секунд, а затем повторить попытку подключения.

В настоящий момент я использую [self performSelector: @selector (restartConection) withObject: nil afterDelay: 15.0]; , но это приводит к нежелательной ситуации, когда объект освобождается его создателем , PerformSelector и NSURLConnections постоянно сохраняют "self" и никогда не освобождаются.

Как я могу сделать это, не удерживая объект постоянно? Любая помощь будет очень признательна.

Спасибо, -Alec

5
задан MattyG 15 January 2012 в 21:18
поделиться