Z powodzeniem używam ARC w moim projekcie. Jednak napotkałem kilka plików (np. W testach jednostkowych i próbnych obiektach), w których reguły ARC są teraz nieco bardziej kruche. Pamiętam, że istniała możliwość wyłączenia ARC dla poszczególnych plików, chociaż nie mogłem znaleźć tej opcji. czy to możliwe? Jak mogę wyłączyć ARC dla …
Otrzymuję następujące ostrzeżenie przez kompilator ARC: "performSelector may cause a leak because its selector is unknown". Oto co robię: [_controller performSelector:NSSelectorFromString(@"someMethod")]; Dlaczego dostaję to ostrzeżenie? Rozumiem, że kompilator nie może sprawdzić, czy selektor istnieje, czy nie, ale dlaczego miałoby to spowodować wyciek? Jak mogę zmienić kod, aby nie wyświetlało się …
Tworzę wyłącznie na iOS 5 przy użyciu ARC. Czy IBOutlets UIView(s) i (podklasy) powinny być stronglub weak? Następujące: @property (nonatomic, weak) IBOutlet UIButton *button; Pozbyłby się tego wszystkiego: - (void)viewDidUnload { // ... self.button = nil; // ... } Czy są jakieś problemy? Szablony są używane, strongpodobnie jak automatycznie generowane …
Podczas sesji WWDC 2014 403 Intermediate Swift i transkrypcji pojawił się następujący slajd Mówca powiedział w takim przypadku, że jeśli go nie użyjemy [unowned self], nastąpi wyciek pamięci. Czy to oznacza, że zawsze powinniśmy używać [unowned self]zamknięcia wewnętrznego? W linii 64 ViewController.swift aplikacji Swift Weather nie używam [unowned self]. Ale …
Istnieją dwa nowe atrybuty zarządzania pamięcią dla właściwości wprowadzonych przez ARC strongi weak. Poza tym copy, co jest oczywiście czymś zupełnie innym, czy są jakieś różnice między strongvs retaina weakvs assign? Z mojego zrozumienia, jedyną różnicą jest to, że weakprzypisze nilwskaźnik do wskaźnika, podczas gdy assignnie, co oznacza, że program …
Jaki jest dokładny powód użycia dispatch_once we współużytkowanym instancie dla singletona pod ARC? + (MyClass *)sharedInstance { // Static local predicate must be initialized to 0 static MyClass *sharedInstance = nil; static dispatch_once_t onceToken = 0; dispatch_once(&onceToken, ^{ sharedInstance = [[MyClass alloc] init]; // Do any other initialisation stuff here …
Czy ktoś może mi wyjaśnić szczegółowo, kiedy muszę korzystać każdy atrybut: nonatomic, copy, strong, weak, i tak dalej, dla zadeklarowanej właściwości i wyjaśnić, co każdy robi? Byłby też świetny przykład. Używam ARC.
Obecnie używam pakietu iOS 5 SDK, próbując opracować moją aplikację. Próbuję uczynić NSString właściwością, a następnie zsyntetyzować go w pliku .m (robiłem to wcześniej bez żadnych problemów). Natknąłem się na to: „Problem semantyczny: Zsyntetyzowany getter właściwości jest zgodny z konwencją nazewnictwa kakao dotyczącą zwracania„ posiadanych ”obiektów.” To jest mój kod: …
Co oznacza „konwersja skrzynki w chronionym zakresie” przy konwersji projektu na ARC? Konwertuję projekt do użycia ARC, używając Xcode 4 Edycja -> Refaktoryzacja -> Konwertuj na ARC Objective-C ... Jednym z błędów, które dostaję, jest to, że „skrzynka przełączników jest chroniona” na „niektórych” przełącznikach w skrzynka przełączników. Edytuj, oto kod: …
Jestem trochę zdezorientowany co do użycia bloku w Objective-C. Obecnie używam ARC i mam dość dużo bloków w mojej aplikacji, obecnie zawsze odnoszących się do selfzamiast jej słabego odniesienia. Czy może to być przyczyną zatrzymania selfi zablokowania bloków przed zwolnieniem? Pytanie brzmi: czy zawsze powinienem używać weakodniesienia selfw bloku? -(void)handleNewerData:(NSArray …
Swift ma: Mocne referencje Słabe referencje Nieznane referencje Czym różni się nieznane odniesienie od słabego odniesienia? Kiedy bezpiecznie jest używać nieznanego odniesienia? Czy nieposiadane odniesienia stanowią zagrożenie dla bezpieczeństwa, takie jak zwisające wskaźniki w C / C ++?
Na platformach Mac i iOS wycieki pamięci są często spowodowane niepublikowanymi wskaźnikami. Tradycyjnie zawsze sprawą najwyższej wagi było sprawdzanie przydziałów, kopiowanie i przechowywanie, aby upewnić się, że każdy ma odpowiedni komunikat o zwolnieniu. Zestaw narzędzi dostarczany z Xcode 4.2 wprowadza automatyczne zliczanie referencji (ARC) w najnowszej wersji kompilatora LLVM , …
Mam działającą aplikację i pracuję nad konwersją jej na ARC w Xcode 4.2. Jedno z ostrzeżeń wstępnych polega na selfsilnym uchwyceniu w bloku prowadzącym do cyklu zatrzymania. Zilustrowałem prosty przykład kodu, aby zilustrować problem. Wydaje mi się, że rozumiem, co to oznacza, ale nie jestem pewien, czy „poprawny” lub zalecany …
W mojej małej aplikacji na iPada mam funkcję „zmień język”, która korzysta z obserwatora. Każdy kontroler widoku rejestruje się u mojego obserwatora podczas jego viewDidLoad:. - (void)viewDidLoad { [super viewDidLoad]; [observer registerObject:self]; } Gdy użytkownik naciśnie przycisk „zmień język”, nowy język jest zapisywany w moim modelu, a obserwator zostaje powiadomiony …
Używamy plików cookie i innych technologii śledzenia w celu poprawy komfortu przeglądania naszej witryny, aby wyświetlać spersonalizowane treści i ukierunkowane reklamy, analizować ruch w naszej witrynie, i zrozumieć, skąd pochodzą nasi goście.
Kontynuując, wyrażasz zgodę na korzystanie z plików cookie i innych technologii śledzenia oraz potwierdzasz, że masz co najmniej 16 lat lub zgodę rodzica lub opiekuna.