Reactos
at master 35 lines 687 B view raw
1#ifndef XML_THREADS_H_PRIVATE__ 2#define XML_THREADS_H_PRIVATE__ 3 4#include <libxml/threads.h> 5 6#ifdef LIBXML_THREAD_ENABLED 7 #ifdef HAVE_PTHREAD_H 8 #include <pthread.h> 9 #define HAVE_POSIX_THREADS 10 #elif defined(_WIN32) 11 #define WIN32_LEAN_AND_MEAN 12 #include <windows.h> 13 #define HAVE_WIN32_THREADS 14 #endif 15#endif 16 17/* 18 * xmlMutex are a simple mutual exception locks 19 */ 20struct _xmlMutex { 21#ifdef HAVE_POSIX_THREADS 22 pthread_mutex_t lock; 23#elif defined HAVE_WIN32_THREADS 24 CRITICAL_SECTION cs; 25#else 26 int empty; 27#endif 28}; 29 30XML_HIDDEN void 31xmlInitMutex(xmlMutexPtr mutex); 32XML_HIDDEN void 33xmlCleanupMutex(xmlMutexPtr mutex); 34 35#endif /* XML_THREADS_H_PRIVATE__ */