blob: 5f33269057c5af3c688f5b96672e697b599ab45b (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
|
/*
* src/port/pthread-win32.h
*/
#ifndef __PTHREAD_H
#define __PTHREAD_H
typedef ULONG pthread_key_t;
typedef struct pthread_mutex_t
{
/* initstate = 0: not initialized; 1: init done; 2: init in progress */
LONG initstate;
CRITICAL_SECTION csection;
} pthread_mutex_t;
#define PTHREAD_MUTEX_INITIALIZER { 0 }
typedef int pthread_once_t;
DWORD pthread_self(void);
void pthread_setspecific(pthread_key_t, void *);
void *pthread_getspecific(pthread_key_t);
int pthread_mutex_init(pthread_mutex_t *, void *attr);
int pthread_mutex_lock(pthread_mutex_t *);
/* blocking */
int pthread_mutex_unlock(pthread_mutex_t *);
#endif
|