Auf der Windows-Plattform wird TCriticalSection durch Aufrufen der Windows-API EnterCriticalSection/LeaveCriticalSection implementiert. Die Microsoft-Dokumentation besagt explizit, dass nach dem Besitz eines Threads für einen kritischen Abschnitt zusätzliche Aufrufe von EnterCriticalSection vorgenommen werden können.Kann TCriticalSection.Acquire mehr als einmal von einem Thread sicher aufgerufen werden?
So weit so gut.
Aber was ist mit dem Verhalten unter den anderen Plattformen Delphi unterstützt wie OSX, iOS und Android?
Andere Plattformen scheint TMonitor zu verwenden. Also könnte die Frage gegen TMonitor neu geschrieben werden.
Kann TMonitor in XE5 trauen? Ältere Delphi-Versionen zeigten Probleme mit TMonitor ... – whosrdaddy
@Uwe Raabe Ich habe gesehen, dass TCriticalSection TMonitor verwendet, aber ich habe TMonitor in DocWiki/XE5 nicht gefunden. Ich habe meine Frage bearbeitet, um TMonitor hinzuzufügen. – fpiette
@whosrdaddy Ich interessiere mich nicht für alte Delphi-Versionen. Ich benutze XE5. – fpiette