2013-07-21 17 views
0

我有一個類使用NSURLConnection來觸發POST請求。EXC_BAD_ACCESS - NSURLConnection

我有其他類在這個類上使用委託,它用來在接收到響應時觸發一個事件。

當我分析的響應,我打電話委託像這樣:

- (void)connectionDidFinishLoading:(NSURLConnection*)conn { ... 
      if (delegate) 
      { 
       [delegate serverDataLayerResponse:entity]; 
      } ... } 

我收到「EXC_BAD_ACCESS(代碼= 1,地址-...」上,如果塊內的行。

我甚至已經試過周圍的部分@try和@catch但它劇照殺死我的應用程序。

我懷疑該代表仍然指向內存中的對象已被釋放?如何我可以從這個防範嗎?

感謝您的幫助。

+1

在某處保留強/保留引用。 – Kevin

回答

1

你有一個糟糕的指針。 delegate非零,所以測試通過,但不指向有效的對象。你可以在代理的-dealloc中放置一個斷點來檢測對象是否被釋放。另外,試着打破你分配委託的地方,並告訴你在這一點上有一個有效的對象。