Windows 플랫폼에서 TCriticalSection은 Windows API EnterCriticalSection/LeaveCriticalSection을 호출하여 구현됩니다. Microsoft 문서는 스레드가 중요한 섹션의 소유권을 가지면 EnterCriticalSection을 추가로 호출 할 수 있다고 명시 적으로 말합니다.스레드가 TCriticalSection.Acquire를 두 번 이상 안전하게 호출 할 수 있습니까?
지금까지 그렇게 좋았습니다.
하지만 OSX, iOS, Android 등 델파이가 지원하는 다른 플랫폼에서의 동작은 어떻습니까?
다른 플랫폼은 TMonitor를 사용하는 것으로 보입니다. 따라서 질문은 TMonitor에 대해 다시 작성 될 수 있습니다.
이 TMonitor이 XE5에서 신뢰할 수
? 이전 Delphi 버전은 TMonitor의 문제점을 노출했습니다. – whosrdaddy@Uwe Raabe TCriticalSection은 TMonitor를 사용하지만 DocWiki/XE5에 문서화 된 TMonitor를 찾지 못했습니다. TMonitor를 추가하기 위해 내 질문을 편집했습니다. – fpiette
@whosrdaddy 오래된 Delphi 버전은 상관하지 않습니다. 나는 XE5를 사용하고있다. – fpiette