public static extern void LeaveCriticalSection(ref CRITICAL_SECTION lpCriticalSection);
public static extern bool TryEnterCriticalSection(ref CRITICAL_SECTION lpCriticalSection);
public static extern void InitializeCriticalSection(out CRITICAL_SECTION lpCriticalSection);