Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
wine-mirror
GitHub Repository: wine-mirror/wine
Path: blob/master/libs/xml2/include/private/threads.h
4394 views
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
*/
20
struct _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
30
XML_HIDDEN void
31
xmlInitMutex(xmlMutexPtr mutex);
32
XML_HIDDEN void
33
xmlCleanupMutex(xmlMutexPtr mutex);
34
35
#endif /* XML_THREADS_H_PRIVATE__ */
36
37