Używam wielu elementów w tle za pomocą metody dispatch_async, a czasami chcę zabić to, co mam w kolejce - czy to możliwe? Na przykład ten kod jest uruchamiany w widoku, a następnie użytkownik powraca do ekranu. Wszystkie te akcje będą działały bez względu na nawigację wsteczną. Idealnie chciałabym zabić tych przedmiotów od biegania:zabijanie elementów w kolejce dispatch_async w iOS
dispatch_async(dispatch_get_global_queue(2, 0), ^{
for (int i=0; i<[self.manufacturers count]; i++) {
NSString *manufacturerID = [[[self.manufacturers objectAtIndex:i] ManufacturerID] stringValue];
[self doSync:manufacturerID withIndex:i setTimer:YES];
}
});
Jeśli utworzyć kolejkę i nazwę go, a następnie zwolnić go na dealloc widoku ten nazywa się one nadal działać.