"Früher" hätte man dies im initialization- und finalization-Abschnitt einer
Unit getan. Das Singleton hätte somit Gültigkeit, solange die
Unit genutzt wird.
Ein class constructor/destructor ist technisch letztlich identisch umgesetzt (die Initialisierung und Auflösung wird auch im initialization/finalization-Anschnitt der
Unit umgesetzt), wird aber nach dem wiki nur durchgeführt, wenn die Klasse auch genutzt wird.
Insofern wäre das der beste Weg.