TMutex
реализовано поверх базового объекта платформы.В Windows это объект мьютекса.На других платформах, которые являются мьютексом pthread.
Ваш вопрос заключается в том, является ли TMutex
повторным входом.В свою очередь, ответ зависит от того, является ли базовый объект платформы реентерабельным.Мьютекс Windows всегда реентерабельный, мьютекс pthread опционально реентерабельный, а код Delphi TMutex
выбирает его использование в реентерабельном режиме, вызывая pthread_mutexattr_settype(Attr, PTHREAD_MUTEX_RECURSIVE)
.
Итак,Ответ на ваш вопрос заключается в том, что TMutex
является вновь поступающим.