0

我有一个名为 myViewController 的视图控制器。然后我有一个名为 myLogic 的 NSObject。myLogic 有一个名为 executeLogic() 的方法,它将调用一些委托方法。(我猜委托方法是在单独的线程中调用的)。我正在从 myViewController 调用 executeLogic(),我希望它在返回执行 myViewController 上的下一个命令之前执行所有委托方法。现在我得到这个错误

 [URLRequestDBStoreLogic respondsToSelector:]: message sent to deallocated instance 0x5d2cff0 

我猜是因为它在调用委托方法之前返回到主线程?我不知道。有什么解决办法吗?将不胜感激。:)

这是调用 URLRequestDBStoreLogic 类的地方(注意这是一个 NSObject 类)

  URLRequestDBStoreLogic * urlRequestLogicDBStoreLogic = [[URLRequestDBStoreLogic alloc]init];
[urlRequestLogicDBStoreLogic loadObjectsAtRemoteServer];

这就是被调用的方法所做的

 - (void) loadObjectsAtRemoteServer {

RKURL * url = [RKURL URLWithBaseURLString:@"http://y.co.uk/share/proxy/alfresco/slingshot/search?site=&term=&tag=x&maxResults=251&sort=&query=&repo=false"];
objectManager = [RKObjectManager managerWithBaseURL:url];
  //Some other Code
   [[RKObjectManager sharedManager] loadObjectsAtResourcePath:@"?tag=x" delegate:self];
}

这就是它在 if 语句中中断的地方。

// Setup the NSURLRequest. The request must be prepared right before dispatching
 - (BOOL)prepareURLRequest
  {
    [_URLRequest setHTTPMethod:[self HTTPMethod]];

if ([self.delegate respondsToSelector:@selector(requestWillPrepareForSend:)]) {
    [self.delegate requestWillPrepareForSend:self];
}

}
4

0 回答 0