X-Git-Url: https://git.tokkee.org/?a=blobdiff_plain;ds=sidebyside;f=compat%2Fwin32%2Fpthread.h;h=c72f100f40ce2ab9ae7abead730ed00c2a461fbf;hb=e8a12280530f16bf2089999ceefe35794d115d07;hp=b8e1bcb046490d4981fc5af4413104aa5ee76dee;hpb=6751e0471df1bdc4a1d5e5a3929a531c74e95aeb;p=git.git diff --git a/compat/win32/pthread.h b/compat/win32/pthread.h index b8e1bcb04..c72f100f4 100644 --- a/compat/win32/pthread.h +++ b/compat/win32/pthread.h @@ -32,17 +32,18 @@ * See also: http://www.cse.wustl.edu/~schmidt/win32-cv-1.html */ typedef struct { - volatile LONG waiters; + LONG waiters; + int was_broadcast; + CRITICAL_SECTION waiters_lock; HANDLE sema; + HANDLE continue_broadcast; } pthread_cond_t; extern int pthread_cond_init(pthread_cond_t *cond, const void *unused); - extern int pthread_cond_destroy(pthread_cond_t *cond); - extern int pthread_cond_wait(pthread_cond_t *cond, CRITICAL_SECTION *mutex); - extern int pthread_cond_signal(pthread_cond_t *cond); +extern int pthread_cond_broadcast(pthread_cond_t *cond); /* * Simple thread creation implementation using pthread API