Automatic Reference Counting

Da Wikipedia, l'enciclopedia libera.

Nella programmazione Objective-C, Automatic Reference Counting (ARC) è un miglioramento del sistema di gestione della memoria, dove il problema di tenere traccia del reference count di un oggetto viene spostato dal programmatore al compilatore.[1]

Nella programmazione Objective-C tradizionale, il programmatore avrebbe dovuto mandare dei messaggi di retain e release agli oggetti per deallocare o prevenire la deallocazione.[2] Con ARC, il compilatore lo fa automaticamente esaminando il codice sorgente e aggiungendo i messaggi di retain e release nel codice compilato.[3]

ARC non è uguale al garbage collector, visto che non ci sono thread in background che agiscono per deallocare gli oggetti che non sono più puntati in altre parti del codice.[4] Al contrario del garbage collector, ARC non gestisce automaticamente reference counting i riferimenti nei clicli; è compito del programmatore fermare i cicli utilizzando weak references[5]

ARC è stato introdotto da Apple Inc. nel 2011 per lo sviluppo di applicazioni su Mac OS X 10.7 Lion e iOS 5[6].

David Chisnall ainformIT ha detto di vedere ARC come "the first significant improvement to Objective-C since the 1980s" (il primo miglioramento significativo per l'Objective-C dagli anni '80).[7]

ARC è supportato in Xcode 4.2 o superiori, Mac OS X 10.6 "Snow Leopard" o superiori, e iOS 4.0 o superiori, anche se da Mac OS X 10.7 "Lion" e iOS 5 viene raccomandato di utilizzarlo, weak references inclusi.

Voci correlate[modifica | modifica sorgente]

Note[modifica | modifica sorgente]

  1. ^ John Siracusa, Automatic Reference Counting in Mac OS X 10.7 Lion: the Ars Technica review, http://arstechnica.com. URL consultato il 15 agosto 2012.
  2. ^ José R.C. Cruz, Automatic Reference Counting on iOS, Dr.Dobb's. URL consultato il 21 agosto 2012.
  3. ^ Stephen G. Kochan, Programming in Objective-C, 4th, Boston, Mass., Addison-Wesley, 1912, p. 408. ISBN 978-0321811905.
  4. ^ Kevin Hoffman, Sams teach yourself Mac OS X Lion app development in 24 hours, Indianapolis, Ind., Sams, 2012, p. 73. ISBN 9780672335815.
  5. ^ General in Automatic Reference Counting, http://clang.llvm.org. URL consultato il 15 agosto 2012.
  6. ^ Kazuki Sakamoto, Pro Multithreading and Memory Management for Ios and OS X With Arc, Grand Central Dispatch and Blocks., Apress, 2012, xii. ISBN 978-1430241164.
  7. ^ David Chisnall, Automatic Reference Counting in Objective-C, Part 2: The Details, informIT. URL consultato il 18 agosto 2012.

Collegamenti esterni[modifica | modifica sorgente]

informatica Portale Informatica: accedi alle voci di Wikipedia che trattano di informatica