Vous cherchez réellement un article ici ? "L'histoire derrière la chaîne d'outils de compilation LLVM de Mac OS X (8) par trois bons étudiants Chris Lattner"
Jusqu'à présent, les développeurs Objective-C peuvent disposer de plusieurs méthodes de gestion de la mémoire, la plus courante étant [object dealloc].
MRC : chaque fois que [object retention] est référencé, le nombre de références sera de +1 et [object release] sera utilisé pour empêcher la libération accidentelle et les pointeurs sauvages.
GC : Ceci n'est pris en charge que par Cocoa. NSGarbageCollector peut implémenter un garbage collection automatique similaire à Java. L'inconvénient est que cela affecte les performances, donc Cocoa Touch ne fournit pas cette fonction.
ARC : Il s'agit d'une nouvelle fonctionnalité (en fait, pas nouvelle). Le nouveau compilateur par défaut de Xcode, Apple LLVM, remplace le précédent LLVM-GCC et utilise Clang comme frontal, livré avec un analyseur statique. compilation, et l'analyseur la terminera là où conserver et libérer doivent être ajoutés. ARC peut prendre en charge un grand nombre d’opérations de comptage manuel de références et éviter de nombreuses erreurs. Après avoir utilisé ARC, il est interdit d'utiliser manuellement les méthodes de conservation et de libération. Vous pouvez surcharger dealloc mais uniquement implémenter des versions personnalisées.
J'ai fait des recherches à ce sujet récemment. Veuillez me corriger s'il y a des erreurs
2.0
2.0 ajoute GC
Vous cherchez réellement un article ici ? "L'histoire derrière la chaîne d'outils de compilation LLVM de Mac OS X (8) par trois bons étudiants Chris Lattner"
Depuis iOS 5. Xcode 4.2.
Jusqu'à présent, les développeurs Objective-C peuvent disposer de plusieurs méthodes de gestion de la mémoire, la plus courante étant [object dealloc].
MRC : chaque fois que [object retention] est référencé, le nombre de références sera de +1 et [object release] sera utilisé pour empêcher la libération accidentelle et les pointeurs sauvages.
GC : Ceci n'est pris en charge que par Cocoa. NSGarbageCollector peut implémenter un garbage collection automatique similaire à Java. L'inconvénient est que cela affecte les performances, donc Cocoa Touch ne fournit pas cette fonction.
ARC : Il s'agit d'une nouvelle fonctionnalité (en fait, pas nouvelle). Le nouveau compilateur par défaut de Xcode, Apple LLVM, remplace le précédent LLVM-GCC et utilise Clang comme frontal, livré avec un analyseur statique. compilation, et l'analyseur la terminera là où conserver et libérer doivent être ajoutés. ARC peut prendre en charge un grand nombre d’opérations de comptage manuel de références et éviter de nombreuses erreurs. Après avoir utilisé ARC, il est interdit d'utiliser manuellement les méthodes de conservation et de libération. Vous pouvez surcharger dealloc mais uniquement implémenter des versions personnalisées.