O'Reilly logo

Die Programmiersprache Ruby by Yukihiro Matsumoto, David Flanagan

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

8.7 ObjectSpace und GC

Das Modul ObjectSpace definiert eine Handvoll Low-Level-Methoden, die gelegentlich für Debugging oder Metaprogrammierung nützlich sein können. Die erwähnenswerteste Methode ist each_object, ein Iterator, der über jedes Objekt (oder jede Instanz einer angegebenen Klasse), das der Interpreter kennt, iterieren kann:

# Eine Liste aller bekannten Klassen ausgeben
ObjectSpace.each_object(Class) {|c| puts c }

Die Methode ObjectSpace._id2ref ist die Umkehrung von Object.object_id: Sie nimmt eine Objekt-ID als Argument entgegen und gibt das zugehörige Objekt zurück oder löst einen RangeError aus, wenn es kein Objekt mit dieser ID gibt.

ObjectSpace.define_finalizer erlaubt die Registrierung einer Proc oder eines Codeblocks, die oder ...

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, interactive tutorials, and more.

Start Free Trial

No credit card required