2 * critical-sections.h: Critical sections
5 * Dick Porter (dick@ximian.com)
7 * (C) 2002 Ximian, Inc.
10 #ifndef _WAPI_CRITICAL_SECTIONS_H_
11 #define _WAPI_CRITICAL_SECTIONS_H_
16 #include "mono-mutex.h"
20 typedef struct _WapiCriticalSection WapiCriticalSection;
22 struct _WapiCriticalSection
28 extern void InitializeCriticalSection(WapiCriticalSection *section);
29 extern gboolean InitializeCriticalSectionAndSpinCount(WapiCriticalSection *section, guint32 spincount);
30 extern void DeleteCriticalSection(WapiCriticalSection *section);
31 extern guint32 SetCriticalSectionSpinCount(WapiCriticalSection *section, guint32 spincount);
32 extern gboolean TryEnterCriticalSection(WapiCriticalSection *section);
33 extern void EnterCriticalSection(WapiCriticalSection *section);
34 extern void LeaveCriticalSection(WapiCriticalSection *section);
38 #endif /* _WAPI_CRITICAL_SECTIONS_H_ */