grand-central-dispatch

NSOperation vs Grand Central Dispatch

Uczę się programowania współbieżnego dla iOS. Do tej pory czytałem o NSOperation/NSOperationQueue oraz GCD. jakie są powody u ... Threads od użytkownika. Jednak związek między tymi dwoma podejściami nie jest dla mnie jasny, więc wszelkie opinie docenione!

wyślij po-GCD w Swift?

Przejrzałem iBook od Apple i nie mogłem znaleźć jego definicji: Czy ktoś może wyjaśnić strukturę dispatch_after? dispatch_after(<#when: dispatch_time_t#>, <#queue: dispatch_queue_t?#>, <#block: dispatch_block_t?#>)

Jak utworzyć kolejkę wysyłkową w Swift 3

W Swift 2 udało mi się utworzyć kolejkę z następującym kodem: let concurrentQueue = dispatch_queue_create("com.swift3.image ... eue", DISPATCH_QUEUE_CONCURRENT) Ale to nie kompiluje się w Swift 3. Jaki jest preferowany sposób zapisu tego w Swift 3?

Oczekiwanie na wykonanie dwóch bloków asynchronicznych przed uruchomieniem kolejnego bloku

Podczas używania GCD, chcemy poczekać, aż dwa bloki asynchroniczne zostaną wykonane i wykonane przed przejściem do kolejnych ... t block3 // how to do that? dispatch_sync(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_HIGH, 0), ^ { // block3 });

Kolejki równoległe vs szeregowe w GCD

Walczę o pełne zrozumienie kolejek równoległych i szeregowych w GCD. Mam kilka problemów i mam nadzieję, że ktoś odpowie mi j ... kolejki współbieżnej, w której mogę wysyłać synchronicznie tyle bloków, ile chcesz? Dzięki za wszelkie dobre wyjaśnienie!

Jak czekać na zakończenie wysyłanego asynchronicznie bloku?

Testuję kod, który wykonuje asynchroniczne przetwarzanie za pomocą Grand Central Dispatch. Kod testowy wygląda tak: [object ... t runSomeLongOperationAndDo:^{ STAssert… }]; dispatch_sync(object.queue, ^{}); ...ale to może być zbyt wiele na object.

Poczekaj, aż swift for loop z asynchronicznymi żądaniami sieciowymi zakończy wykonywanie

Chciałbym, aby w pętli for wysłano kilka żądań sieciowych do firebase, a następnie przekazano dane do nowego kontrolera widok ... poczekać, aż wszystkie żądania asynchroniczne zostaną zakończone, zanim przekażę datesArray do następnego kontrolera widoku.

Jak napisać dispatch po GCD w Swift 3 i 4?

W Swift 2 udało mi się użyć dispatch_after, aby opóźnić akcję za pomocą grand central dispatch: var dispatchTime: dispatch_ ... wydaje się kompilować w Swift 3 (lub 4). Jaki jest preferowany sposób zapisu tego w Swift 3 (przy użyciu nowego API wysyłki)?

Różnica między asynchronią wysyłkową a synchronizacją wysyłkową w kolejce szeregowej?

Stworzyłem taką kolejkę seryjną: dispatch_queue_t _serialQueue = dispatch_queue_create("com.example.name", DISPATCH_QUE ... ); Rozumiem, że niezależnie od zastosowanej metody wysyłki, TASK 1 zostanie wykonana i zakończona przed TASK 2, zgadza się?

Jak mogę wysyłać synchronizację, wysyłać asynchronizację, wysyłać po itd. W Swift 3, Swift 4 i innych?

Mam dużo kodu w Swift 2.x (lub nawet 1.x) projekty, które wyglądają tak: // Move to a background thread to do some long run ... błędy. Niektóre z nich oferują naprawę mojego kodu, ale nie wszystkie poprawki produkują działający kod. Co mam z tym zrobić?

iPhone-Grand Central Dispatch main thread

Używam z powodzeniem, grand central dispatch w moich aplikacjach, ale zastanawiałem się, jaka jest prawdziwa zaleta używania ... w pół sekundy po tym, jak je zwolniłeś. Na drugi przypadek jest podobny do [self doStuff]; Prawda? Ciekawe, co myślicie.

Czy ARC obsługuje kolejki wysyłkowe?

Czytam dokumentację apple ' a o "zarządzaniu pamięcią dla kolejek wysyłkowych": Nawet jeśli zaimplementujesz aplikację p ... jest garbage collector, ale chciałbym mieć pewność, że nie muszę dispatch_retain i dispatch_release mojego dispatch_queue_t

Podstawowe Dane i wątki / Grand Central Dispatch

Jestem początkujący z Grand Central Dispatch (GCD) i Core Data, i potrzebuję twojej pomocy, aby korzystać z Core Data z CGD, ... pisywania, zapisać dane i zaktualizować interfejs użytkownika, bez blokowania interfejsu podczas zapisywania 40.000 obiektów?

korzystanie z synchronizacji wysyłek w Grand Central Dispatch

Czy ktoś może wyjaśnić za pomocą bardzo jasnych przypadków użycia, do czego służy dispatch_sync in GCD? Nie mogę zrozumieć, gdzie i dlaczego miałbym tego użyć. Dzięki!

GCD do wykonania zadania w głównym wątku

Mam odpowiedź zwrotną, która może pochodzić z dowolnego wątku. Kiedy dostaję tego callback, następnie chciałbym wykonać pewne ... anie tego sprawdzenia przed wywołaniem poniższego kodu? dispatch_async(dispatch_get_main_queue(), ^{ // do work here });

Grand Central Dispatch (GCD) z CoreData

Używam Grand Central Dispatch (GCD)w mojej aplikacji, aby wykonać ciężkie podnoszenie. Aplikacja wykorzystuje Core-Data do ce ... peracje na moim NSManagedObject W main_queue? Niektóre z operacji, które aktualizują Może potrwać 2-3 sekundy. Proszę o radę.

Jak wysyłać w kolejce głównej synchronicznie bez impasu?

/ Align = "center" bgcolor = "# e0ffe0 " / król Danii / / align = center / Nie wiem czy aktualnie działam w głównym wątku Cz ... na wysłanie bloku asynchronicznie – aplikacja jest w sytuacji, w której blok asynchronicznie zostanie uruchomiony "za późno".

Jak zaplanować blok do uruchomienia w następnej iteracji pętli run?

Chcę być w stanie wykonać block w następnej iteracji pętli run. Nie ma znaczenia, czy zostanie wykonana na początku czy na ko ... a bloku (w przeciwieństwie do wywołania metody) na następnym Uruchom iterację pętli z gwarancją, że nie nastąpi to wcześniej.

Czy musisz utworzyć NSAutoreleasePool w bloku w GCD?

Zwykle, jeśli odradzasz wątek w tle lub uruchamiasz NSOperation na NSOperationQueue, musisz utworzyć NSAutoreleasePool dla te ... gę znaleźć ostatecznej dokumentacji na ten temat, więc zastanawiałem się, czy ktoś mógłby wskazać, gdzie to jest powiedziane.

NSURLConnection i grand central dispatch

Czy wskazane jest zawijanie NSUrlConnection w blokach stylu gcd i uruchamianie go w kolejce low_priority? Muszę się upewnić, ... NSString* result = [self mySynchronousHttp:someURLToInvoke]; }); // If I need to cancel dispatch_suspend(queue);