Die automatische Referenzzählung (ARC) ist eine Compilerfunktion, die die automatische Speicherverwaltung von Objective-C- und Swift-Objekten ermöglicht.
Ich verwende ARC erfolgreich in meinem Projekt. Ich bin jedoch auf einige Dateien gestoßen (z. B. in Unit-Tests und Scheinobjekten), in denen die Regeln von ARC derzeit etwas fragiler sind. Ich erinnere mich, dass es eine Möglichkeit gab, ARC pro Datei zu deaktivieren, obwohl ich diese Option nicht finden konnte. …
Ich erhalte die folgende Warnung vom ARC-Compiler: "performSelector may cause a leak because its selector is unknown". Folgendes mache ich: [_controller performSelector:NSSelectorFromString(@"someMethod")]; Warum bekomme ich diese Warnung? Ich verstehe, dass der Compiler nicht überprüfen kann, ob der Selektor vorhanden ist oder nicht, aber warum würde das ein Leck verursachen? Und …
Ich entwickle ausschließlich für iOS 5 mit ARC. Sollte IBOutlets bis UIViews (und Unterklassen) sein strongoder weak? Folgende: @property (nonatomic, weak) IBOutlet UIButton *button; Würde all das loswerden: - (void)viewDidUnload { // ... self.button = nil; // ... } Gibt es dabei Probleme? Die Vorlagen werden ebenso verwendet strongwie die …
In der WWDC 2014-Sitzung 403 Intermediate Swift und im Transkript gab es die folgende Folie Der Sprecher sagte in diesem Fall, wenn wir es dort nicht verwenden [unowned self], wird es ein Speicherverlust sein. Bedeutet das, dass wir immer einen [unowned self]Innenverschluss verwenden sollten? In Zeile 64 von ViewController.swift der …
Es gibt zwei neue Speicherverwaltungsattribute für Eigenschaften, die von ARC eingeführt wurden, strongund weak. Abgesehen davon copy, was offensichtlich etwas völlig anderes ist, gibt es Unterschiede zwischen strongvs retainund weakvs assign? Nach meinem Verständnis besteht der einzige Unterschied darin, dass der Zeiger weakzugewiesen wird nil, während dies assignnicht der Fall …
Was ist der genaue Grund für die Verwendung von dispatch_once im gemeinsam genutzten Instanz-Accessor eines Singletons unter 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 …
Kann mir jemand im Detail erklären , wenn ich jedes Attribut verwenden müssen: nonatomic, copy, strong, weak, und so weiter, für eine deklarierte Eigenschaft, und erklären , was jeder tut? Ein Beispiel wäre auch großartig. Ich benutze ARC.
Was bedeutet bei der Konvertierung eines Projekts zur Verwendung von ARC "Switch Case ist im geschützten Bereich"? Ich konvertiere ein Projekt zur Verwendung von ARC mit Xcode 4 Bearbeiten -> Refactor -> In Objective-C ARC konvertieren ... Einer der Fehler, den ich erhalte, ist "Schaltergehäuse befindet sich im geschützten Bereich" …
Ich verwende derzeit das iOS 5 SDK, um meine App zu entwickeln. Ich versuche, einen NSString zu einer Eigenschaft zu machen und ihn dann in der .m-Datei zu synthetisieren (ich habe dies zuvor ohne Probleme getan). Nun stieß ich auf Folgendes: "Semantisches Problem: Der synthetisierte Getter von Property folgt der …
Ich bin etwas verwirrt über die Blockverwendung in Objective-C. Ich verwende derzeit ARC und habe ziemlich viele Blöcke in meiner App, die sich derzeit immer auf selfdie schwache Referenz beziehen. selfKann dies die Ursache dafür sein, dass diese Blöcke erhalten bleiben und nicht freigegeben werden? Die Frage ist, sollte ich …
Swift hat: Starke Referenzen Schwache Referenzen Nicht besessene Referenzen Wie unterscheidet sich eine nicht besessene Referenz von einer schwachen Referenz? Wann ist es sicher, eine nicht im Besitz befindliche Referenz zu verwenden? Sind nicht besessene Referenzen ein Sicherheitsrisiko wie baumelnde Zeiger in C / C ++?
Auf den Mac- und iOS-Plattformen werden Speicherverluste häufig durch unveröffentlichte Zeiger verursacht. Traditionell war es immer von größter Bedeutung, Ihre Zuordnungen, Kopien und Aufbewahrungen zu überprüfen, um sicherzustellen, dass jede eine entsprechende Freigabemeldung enthält. Die mit Xcode 4.2 gelieferte Toolchain führt die automatische Referenzzählung (ARC) mit der neuesten Version des …
Ich habe eine funktionierende App und arbeite daran, sie in Xcode 4.2 in ARC zu konvertieren. Eine der Warnungen vor der Prüfung besteht darin, selfstark in einem Block zu erfassen , was zu einem Aufbewahrungszyklus führt. Ich habe ein einfaches Codebeispiel erstellt, um das Problem zu veranschaulichen. Ich glaube, ich …
In meiner kleinen iPad-App habe ich eine "Sprache wechseln" -Funktion, die einen Beobachter verwendet. Jeder View Controller registriert sich während seiner Zeit bei meinem Beobachter viewDidLoad:. - (void)viewDidLoad { [super viewDidLoad]; [observer registerObject:self]; } Wenn der Benutzer auf die Schaltfläche "Sprache ändern" klickt, wird die neue Sprache in meinem Modell …
We use cookies and other tracking technologies to improve your browsing experience on our website,
to show you personalized content and targeted ads, to analyze our website traffic,
and to understand where our visitors are coming from.
By continuing, you consent to our use of cookies and other tracking technologies and
affirm you're at least 16 years old or have consent from a parent or guardian.