:디스패치 비동기 대기열 비우기 -이 코드는 어떻게 작동합니까? 아래 그림과 같이 내가 비동기 요청 전화를 만들고있어
.H 파일 :
하는 .m 파일이@interface APIManager : NSObject {
dispatch_queue_t dataQueue;
}
:
:-(id)init{
dataQueue = dispatch_queue_create("com.test.dataQueue", DISPATCH_QUEUE_SERIAL);
}
이 큐에는 다음과 같이 사용된다
dispatch_async(dataQueue, ^(void){
//data retrieval from server + parsing
});
사용자가 로그 아웃하면 다음과 같이 대기열이 비워집니다.
-(void)logout{
dispatch_async(dataQueue, ^{});
}
내가 올바른 방법을 사용하고 있습니까? 큐를 일시 중단 한 다음 다시 시작하고 싶지 않습니다.
GCD에는 최신 버전의 취소 기능이 있습니다. 그러나 취소가 여기에서 원하는 것은 분명하지 않다. 어쩌면'dataQueue'의 작업이 실제로 수행 될 필요가있을 것이다. – das