retain-cycle

Używanie słabego self w funkcji asynchronicznej wysyłania

Czytałem wiele postów o używaniu __weak self wewnątrz dispatch_async, a teraz jestem trochę zdezorientowany. Jeśli mam: se ... self. Ponieważ czytałem, że w niektórych przypadkach dispatch_async nie trzeba __weak self. Zobacz ostatni komentarz tutaj

Słabe odniesienie do celu NSTimer, aby zapobiec cyklowi zatrzymania

Używam NSTimer w ten sposób: timer = [NSTimer scheduledTimerWithTimeInterval:30.0f target:self selector:@selector(tick) use ... alidate]; } Jest to realna opcja? Widziałem wiele sposobów, jak ludzie radzą sobie z tym problemem, ale nie widziałem tego.

Dogłębne zrozumienie cyklu

Powiedzmy, że mamy trzy obiekty: dziadka, rodzica i dziecko. Dziadkowie zatrzymują rodzica, rodzic zatrzymuje dziecko, a dziecko zatrzymuje rodzica. Dziadek uwalnia rodzica. Co się stanie w tym przypadku ?

Odnosi się do słabego JA wewnątrz zagnieżdżonego bloku

Załóżmy, że już stworzyłem słabą jaźń używając __weak typeof(self) weakSelf = self; [self doABlockOperation:^{ ... ... eak typeof(self) weakerSelf = weakSelf; [weakSelf doAnotherBlockOperation:^{ [weakerSelf doSomething]; }

rekurencyjny blok i zachowuje cykle w łuku

EDIT2: Nie. Sugerowana odpowiedź dotyczy połączeń asynchronicznych . Chcę i potrzebuję wywołań synchronicznych, jak w norma ... Zwróć uwagę na te więc pytania {[55] } dotyczą przechwytywania self a te więc pytania nie mają zadowalającej odpowiedzi.

Czy taniec weakSelf / strongSelf jest naprawdę konieczny, gdy odwołujemy się do jaźni wewnątrz nie zachowanego dopełnienia, zwanego z kontrolera UIViewController?

Powiedzmy, że mam następującą metodę wewnątrz UIViewController podklasy: - (void)makeAsyncNetworkCall { [self.networkSe ... } }); }]; } Ale uważam to za niesłychanie brzydkie i chciałbym tego uniknąć, jeśli nie jest to konieczne.

Core Data-break zachowuje cykl kontekstu nadrzędnego

Załóżmy, że mamy dwa podmioty w podstawowym modelu danych: działy i pracowników. Dział ma stosunek jeden do wielu pracowników ... edObjects) [rootContext refreshObject:mo mergeChanges:NO]; }]; }]; Górny nie dealokuje obiektów, dolny tak.

Czy musimy używać słabego JA wewnątrz UIAnimationBlocks w ARC?

Czy musimy używać _ _ weak self wewnątrz bloków UIAnimation, jak podano poniżej? Czy stworzy problem z cyklem, jeśli nie okre ... [self doSomething]; }]; Czy powinniśmy używać słabego ja?

Jak naprawić " Przechwytywanie 'bloku' mocno w tym bloku prawdopodobnie doprowadzi do cyklu zatrzymania"

Pracuję nad tym kodem, który wykonuje długą asynchroniczną operację w sieci i po jej zakończeniu uruchamia blok zakończenia, ... turing 'completionBlock' strongly in this block is likely to lead to a retain cycle Jak mogę naprawić to? Dzięki Nicola