Esiste un'opzione del compilatore (o un altro modo) per vedere dove ARC sta inserendo il mantenimento e il rilascio? Questo è principalmente per curiosità. Posso vederli nel codice di disassemblaggio, ma a volte è difficile da controllare.Vedere dove viene inserito il mantenimento e il rilascio di ARC
risposta
No, non è così. Sono d'accordo però, sarebbe un'aggiunta abbastanza carina (anche se non servirebbe molte funzioni)! E come hai detto tu, puoi guardare nel codice di disassemblaggio se sei davvero curioso.
No. Se il compilatore dovesse fornire questo, verrebbe assolutamente sopraffatto dal numero di ritiri/rilasci, poiché la maggior parte di essi viene eliminata durante la fase di ottimizzazione. Ma il compilatore non può nemmeno farlo, perché ARC non è una fase di pre-elaborazione. Fa parte della compilation. Quindi non sarai in grado di ottenere nulla oltre a guardare l'assemblea.
e quando arrivi Codice ARC-ed per 4.x? –
@Yar: cosa intendi? –
Codice compilato per funzionare con iOS 4.x, che in realtà non supporta ARC. Quel codice viene effettivamente inserito nel codice prima della compilazione, giusto? –
- 1. Come convertire automaticamente il codice di mantenimento manuale in ARC?
- 2. UIButton con azione di mantenimento e azione di rilascio
- 3. Xcode, vedere dove viene utilizzato un metodo
- 4. Come viene implementato il conto di mantenimento in NSObject?
- 5. Come posso evitare il rilascio di oggetti durante l'utilizzo di Objective-C ARC con Xcode 4.2?
- 6. dove .apk file viene inserito nel telefono dopo l'installazione
- 7. Il blocco viene rilasciato mentre in NSDictionary (ARC)
- 8. ARC - Il significato di __unsafe_unretained?
- 9. Dove viene salvato il pacchetto di onSaveInstanceState?
- 10. Da dove viene importato il modulo?
- 11. performSelector: withObject: e il suo comportamento di mantenimento
- 12. Dove posso vedere il codice sorgente di glassfish sul web
- 13. Dealloc non viene chiamato sull'app ARC
- 14. Conversione di oggetti a rilascio automatico su ARC
- 15. Dove deve essere inserito JavaScript?
- 16. Perché il mio IBOutlet viene rilasciato sotto ARC?
- 17. Rilevamento mantenimento circolare dell'ARC
- 18. Ridisegnare durante il trascinamento e rilascio
- 19. Avvia l'app quando viene inserito il codice segreto?
- 20. Dove viene creato automaticamente il database SQLite da django?
- 21. Da dove viene il valore predefinito mb_internal_encoding()?
- 22. Da dove viene normalmente il -DNDEBUG?
- 23. Dove posso vedere il codice utilizzato nelle librerie standard C++?
- 24. Come si usa il metodo getView() e dove viene chiamato?
- 25. Da dove viene il nome `Psycopg`?
- 26. da dove viene il termine flat-file?
- 27. Da dove viene il primo file binario?
- 28. ARC, non ARC e ereditarietà
- 29. Dove vedere l'XML generato (KSOAP2)
- 30. È possibile vedere il codice generato da ARC in fase di compilazione?
+1 domanda molto interessante. D'altra parte, non riesco a vedere come questo ti possa aiutare, ma sono sicuro che hai in mente qualche situazione ...? –
Può essere utile se devi fare molti tipi di cast di tipo __bridge in codice c. Le cose possono diventare un po 'confuse, ma come ho detto, sono per lo più curioso. Mi piace sapere come funzionano le cose non solo come farle funzionare. –
Roger, non capisco il tuo obiettivo. Se si desidera controllare i retains ecc., Compilare semplicemente come non ARC (-fno-objc-arc). ARC aggiungerà ritardi proprio come faresti tu, ma forse userai un valore meno recente di quanto potresti. Questo sarà lo stesso sia per i sistemi pre-ARC che ARC. Andrew – adonoho