Mercurial > hg > nginx-quic
comparison src/os/unix/ngx_thread.h @ 371:780e93985b93
nginx-0.0.7-2004-06-28-20:05:02 import
author | Igor Sysoev <igor@sysoev.ru> |
---|---|
date | Mon, 28 Jun 2004 16:05:02 +0000 |
parents | 54f76b0b8dca |
children | c9fdfccebc49 |
comparison
equal
deleted
inserted
replaced
370:54f76b0b8dca | 371:780e93985b93 |
---|---|
35 int semid; | 35 int semid; |
36 } ngx_mutex_t; | 36 } ngx_mutex_t; |
37 | 37 |
38 | 38 |
39 typedef struct { | 39 typedef struct { |
40 ngx_mutex_t mutex; | 40 int semid; |
41 } ngx_cv_t; | 41 ngx_log_t *log; |
42 } ngx_cond_t; | |
42 | 43 |
43 | 44 |
44 #define ngx_thread_sigmask(how, set, oset) \ | 45 #define ngx_thread_sigmask(how, set, oset) \ |
45 (sigprocmask(how, set, oset) == -1) ? ngx_errno : 0 | 46 (sigprocmask(how, set, oset) == -1) ? ngx_errno : 0 |
46 | 47 |
105 #define ngx_mutex_lock(m) ngx_mutex_dolock(m, 0) | 106 #define ngx_mutex_lock(m) ngx_mutex_dolock(m, 0) |
106 ngx_int_t ngx_mutex_dolock(ngx_mutex_t *m, ngx_int_t try); | 107 ngx_int_t ngx_mutex_dolock(ngx_mutex_t *m, ngx_int_t try); |
107 ngx_int_t ngx_mutex_unlock(ngx_mutex_t *m); | 108 ngx_int_t ngx_mutex_unlock(ngx_mutex_t *m); |
108 | 109 |
109 | 110 |
110 ngx_cv_t *ngx_cv_init(ngx_log_t *log); | 111 ngx_cond_t *ngx_cond_init(ngx_log_t *log); |
111 void ngx_cv_done(ngx_cv_t *cv); | 112 void ngx_cond_done(ngx_cond_t *cv); |
112 ngx_int_t ngx_cv_wait(ngx_cv_t *cv); | 113 ngx_int_t ngx_cond_wait(ngx_cond_t *cv, ngx_mutex_t *m); |
113 ngx_int_t ngx_cv_signal(ngx_cv_t *cv); | 114 ngx_int_t ngx_cond_signal(ngx_cond_t *cv); |
114 | 115 |
115 | 116 |
116 #else /* !NGX_THREADS */ | 117 #else /* !NGX_THREADS */ |
117 | 118 |
118 #define ngx_thread_volatile | 119 #define ngx_thread_volatile |