Jupp, einige Methoden/Property kann man nicht Thread-safe machen.
Außer man lässt solch problematischen Methoden weg. Und falls man sie dennoch benötigt, dann in einer SubKlasse (ala LockBuffer) verstecken,
oder in diesen Methoden/Property eine
Exception werfen, wenn vorher extern kein Enter/Lock gestartet wurde.
Die komplette Klasse muß man da nicht wegsperren, um die einachen Sachen weiterhin einfach/direkt aufrufen zu können.
Wenn FInstance immer keine Klasse ist, dann kannst statt FLock auch direkt FInstance verwenden, oder den TThreadWrapper selbst.