To jest pytanie już odpowiedzieć w ramach SO ale Nie mogę znaleźć go w dokumentacji Apple nigdzie. Czy możesz wskazać mi właściwy kierunek?performSelector: withObject: i zachowuje zachowanie
obrębie następujących tematów
Do I have to retain an object before passing it to -performSelector:withObject:afterDelay:?
the effect on retain count of performSelector:withObject:afterDelay:inModes
Is object that calls performSelector:withObject:afterDelay get retained by the NSRunLoop?
domyślne zachowanie wydaje się być następujące: zachowuje odbiornik i argumentu (ów).
Używam następujący kod
[[self delegate] performSelector:@selector(tryToSendStoreData:) withObject:userData];
gdzie userData
jest autoreleased oject.
Rejestrowanie licznika zatrzymania (Wiem, że może to nie być prawidłowe, aby to zrobić) dane przekazane w przyrostach licznika zatrzymania. Gdy metoda jest wywoływana przez delegata, liczba zatrzymań nie jest równa jednej.
Moje pytanie brzmi: czy muszę wykonać pewne zarządzanie pamięcią, aby uniknąć wycieków, czy też muszę zaufać produktom Apple? Mówię tu jako agnostyk, ponieważ nie mogę znaleźć odpowiednich dokumentów.
Z góry dziękuję.
Uważam, że liczba zatrzymanych nie jest już poprawna w ARC – Dustin
@ Co nie używam ARC w tym projekcie. Dzięki. –
Dla projektu z włączonym ARC możesz zajrzeć do - http://stackoverflow.com/questions/7017281/performselector-may-cause-a-leak-because-its-selector-is-unknown – rishi