RAII

RAII

Ressourcenbelegung ist Initialisierung, meist abgekürzt durch RAII, für engl. resource acquisition is initialization, bezeichnet eine in der Programmiersprache C++ verbreitete Programmiertechnik, die die Steuerung der Belegung und Freigabe von Betriebsmitteln (auch Ressourcen genannt) an den Gültigkeitsbereich von Variablen koppelt.

Dabei wird die Belegung einer Ressource an den Konstruktoraufruf einer Variablen eines benutzerdefinierten Typs gebunden. Die automatische Freigabe wird durch das Verlassen des Gültigkeitsbereichs ausgelöst (am Blockende, bei Ausnahmeauslösung, durch Rückgabe an Aufrufer, usw.). Dabei sorgt der implizite Destruktoraufruf der Variablen für die Wiederfreigabe der Ressource.

Da in C++ Destruktoren von Variablen benutzerdefinierter Typen beim Verlassen des Gültigkeitsbereiches insbesondere auch unter Ausnahmebedingungen automatisch aufgerufen werden, ist RAII ein Schlüsselkonzept zum Schreiben von ausnahmefestem Code.

Ein typischer Einsatzfall für RAII ist die Verwaltung von Datei-Operationen und die Steuerung von Prozess- oder Thread-Sperren in nebenläufigen Programmen.

Auch die Eigentümerschaft von mit new erworbenem Speicher kann in C++ über diese Technik gesteuert werden. In der C++-Standardbibliothek ist zu diesem Zweck beispielsweise auto_ptr definiert.


Wikimedia Foundation.

Игры ⚽ Нужно решить контрольную?

Schlagen Sie auch in anderen Wörterbüchern nach:

  • RAII — est l acronyme anglais de Resource Acquisition Is Initialization, que l on peut traduire littéralement par l Acquisition d une Ressource est une Initialisation. Il s agit d une technique de programmation utilisée dans plusieurs langages orientés… …   Wikipédia en Français

  • RAII — Adquirir Recursos es Inicializar , a menudo referido por sus siglas en inglés RAII (de Resource Acquisition Is Initialization ), es un popular patrón de diseño en varios lenguajes de programación orientados a objetos como C++, y Ada. La técnica… …   Wikipedia Español

  • RAII — …   Википедия

  • RAII — noun Resource acquisition is initialization , a popular design pattern in object oriented programming that ties resources to the lifespan of associated objects to prevent resource leakage …   Wiktionary

  • Polygonum raii — ID 66516 Symbol Key PORA6 Common Name Ray s knotweed Family Polygonaceae Category Dicot Division Magnoliophyta US Nativity Native to U.S. US/NA Plant Yes State Distribution ME Growth Habit Forb/herb Duration …   USDA Plant Characteristics

  • Polygonum oxyspermum C.A. Mey. & Bunge ex Ledeb. ssp. raii (Bab.) Webb & Chater — Symbol PORA6 Synonym Symbol POOXR Botanical Family Polygonaceae …   Scientific plant list

  • Polygonum oxyspermum C.A. Mey. & Bunge ex Ledeb. ssp. raii (Bab.) Webb & Chater — Symbol PORA6 Synonym Symbol POOXR Botanical Family Polygonaceae …   Scientific plant list

  • Polygonum raii Bab. — Symbol PORA6 Common Name Ray s knotweed Botanical Family Polygonaceae …   Scientific plant list

  • Brama raii — noun deep bodied sooty black pelagic spiny finned fish of the northern Atlantic and northern Pacific; valued for food • Syn: ↑pomfret • Hypernyms: ↑sea bream, ↑bream • Member Holonyms: ↑Brama, ↑genus Brama …   Useful english dictionary

  • Resource Acquisition Is Initialization — Resource Acquisition Is Initialization, often referred to by the acronym RAII, is a popular design pattern in many object oriented languages like C++, D and Ada. The technique, invented by Bjarne Stroustrupcite book title = The Design and… …   Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”