2014-02-25 3 views
1

AFNetworking을 사용하여 현재 네트워크 요청을 모두 취소해야하는 프로젝트가 있습니다. 나는 이것을 취소하기 위해 이것을 사용하고 있지만 성공 콜백은 여전히 ​​호출 중이다. 작업을 취소 한 후에 성공 블록이 호출되지 않도록하는 방법이 있습니까?취소 AFNetworking 2.0 성공 블록

[[MYClientClass mysharedClient] operationQueue] cancelAllOperations]; 

여기서 MyClientClass는 AFHTTPSessionManager의 하위 클래스입니다.

도움을 주시면 감사하겠습니다.

+0

단일 작업을 시작하는 방법을 코드로 게시 할 수 있습니까? – RaffAl

답변

-1

NSOperationQueue의 cancelAllOperations를 호출하면 NSOperationQueue에서 모든 작업이 취소되고 결과적으로 해당 작업이 성공/실패 블록을 호출하지 못하게됩니다.

요청의 성공/실패 블록이 실행되는 것을보고 있다면 작업 대기열에 추가하는 것을 잊어 버렸고 대기열없이 작업을 직접 시작했거나 다른 작업 대기열에 추가 한 것일 수 있습니다 에 대한 모든 작업을 취소하는 것을 잊었습니다.

가능한 경우이 문제가 발생한 요청 작업을 어떻게 작성했는지 보여주는 일부 코드를 게시 할 수 있습니까? 문제를보다 구체적으로 진단하는 데 도움이됩니다.

+0

받은 작업을 취소 할 때 로드하지 못했습니다. Error Domain = NSURLErrorDomain Code = -999 "작업을 완료 할 수 없습니다 (NSURLErrorDomain 오류 -999)."UserInfo = 0x10b444cb0 {NSErrorFailingURLKey = http : //xxxxxxxx.com } – Danil