0
저는 현재 작업중인 응용 프로그램의 제출 대기열을 구현하고 있습니다. 이 응용 프로그램은 네트워크 가용성의 변화에 대응하도록 설계되었습니다. 대기열에 객체가 있고 네트워크 연결을 사용할 수있게되면 응용 프로그램은 대기열에 객체를 제출하기 시작합니다. 객체는 응용 프로그램이 포 그라운드에있을 때 완벽하게 작동합니다. 응용 프로그램이 백그라운드로 들어가고 대기열이 제출할 때 수행하고 싶은 작업은 모두 대기열 제출을 시도 할 때까지 대기열 제출을 계속 진행해야합니다. 큐 제출iOS 계속 진행할 작업
내 방법은 :
-(void)submitAll {
dispatch_async(dispatch_get_global_queue(DISPTACH_PRIOROITY_DEFAULT,0) ^(void){
self.submitting = TRUE;
for (id queueObject in theQueue) {
[self submitQueueObject:queueObject];
}
self.submitting = FALSE;
});
}
는 애플리케이션이 배경에 진입 할 때 상기 루프 continiue이 가능한가? 당신이 10 분 이내에 완료 할 수있는 경우
그것은 10 분 이내에 완료해야 전경에서 이동 한 후 계속 실행하는 데 사용할 수있는,하지만 난 어떻게 후크 것 이미 실행중인 루프에? –
후크하지 않아도됩니다. 포 그라운드에서 작업 한 코드는 앱이 백그라운드에있을 때처럼 계속 작동합니다. beginBackgroundTaskWithExpirationHandler : 백그라운드에서 계속 실행 권한을 요청하는 것과 같습니다. (이 이름은 실제로 뭔가를하기 시작하거나 전화 할 때 특정 작업을 실행해야 함을 의미합니다. beginBackgrounTaskWithExpirationHandler : 앱이 활성화 될 때마다 호출합니다. – Gruntcakes