diff options
author | Igor Sysoev <igor@sysoev.ru> | 2004-09-28 08:34:51 +0000 |
---|---|---|
committer | Igor Sysoev <igor@sysoev.ru> | 2004-09-28 08:34:51 +0000 |
commit | d90282d8ba69973d6612c405e52636085623ddcd (patch) | |
tree | 59e36e780b2f5b8f9348013d3037f8fc06ba0247 /src/event/ngx_event_thread.c | |
parent | 6d2a14aa906b1d576d5151b2410b59cfcab5edd4 (diff) | |
download | nginx-d90282d8ba69973d6612c405e52636085623ddcd.tar.gz nginx-d90282d8ba69973d6612c405e52636085623ddcd.zip |
nginx-0.1.0-2004-09-28-12:34:51 import; set copyright and remove unused files
Diffstat (limited to 'src/event/ngx_event_thread.c')
-rw-r--r-- | src/event/ngx_event_thread.c | 129 |
1 files changed, 0 insertions, 129 deletions
diff --git a/src/event/ngx_event_thread.c b/src/event/ngx_event_thread.c deleted file mode 100644 index 527b49cd0..000000000 --- a/src/event/ngx_event_thread.c +++ /dev/null @@ -1,129 +0,0 @@ - -volitile int ngx_last_posted_event; - - -typedef struct { - ngx_tid_t tid; - ngx_cv_t cv; -} ngx_thread_data_t; - -static ngx_thread_data_t *threead_data; - - - - - -{ - - err = ngx_thread_cond_wait(ngx_thread_data_cv, ngx_thread_data_mutex); - - tid = ngx_thread_self(); - - for (i = 0; i < thread_data_n; i++) { - if (thread_data[i].tid == tid) { - cv = thread_data[i].cv; - break; - } - } - - if (i == thread_data_n) { - error - return - } - - - for ( ;; ) { - - err = ngx_thread_cond_wait(cv, ngx_posted_events_mutex); - if (err) { - ngx_log_error(NGX_ALERT, log, err, - ngx_thread_cond_wait_n " failed, thread is exiting"); - return; - } - - for ( ;; ) { - ev = NULL; - - for (i = ngx_last_posted_event; i > 0; i--) { - ev = ngx_posted_events[i]; - - if (ev == NULL) { - continue; - } - - err = ngx_thread_mutex_trylock(ev->mutex); - - if (err == 0) { - ngx_posted_events[i] = NULL; - - while (ngx_posted_events[ngx_last_posted_event] == NULL) { - ngx_last_posted_event--; - } - - break; - } - - if (err == NGX_EBUSY) { - ev = NULL; - continue; - } - - ngx_log_error(NGX_ALERT, log, err, - ngx_thread_mutex_unlock_n " failed, - thread is exiting"); - - ngx_worker_thread_error(); - return; - } - - err = ngx_thread_mutex_unlock(ngx_posted_events_mutex); - if (err) { - ngx_log_error(NGX_ALERT, log, err, - ngx_thread_mutex_unlock_n - " failed, thread exiting"); - return; - } - - if (ev == NULL) { - break; - } - - ngx_event_handle_event(ev); - - err = ngx_thread_mutex_unlock(ev->mutex); - if (err) { - ngx_log_error(NGX_ALERT, log, err, - ngx_thread_mutex_unlock_n - " failed, thread exiting"); - - ngx_worker_thread_error(); - return; - } - - err = ngx_thread_mutex_lock(ngx_posted_events_mutex); - if (err) { - ngx_log_error(NGX_ALERT, log, err, - ngx_thread_mutex_lock_n - " failed, thread exiting"); - return; - } - } - - if (restart) { - ngx_log_error(NGX_INFO, log, 0, "thread is exiting"); - return; - } - } -} - -ngx_worker_thread_error() -{ - ngx_err_t err; - - err = ngx_thread_mutex_unlock(ngx_posted_events_mutex); - if (err) { - ngx_log_error(NGX_ALERT, log, err, - ngx_thread_mutex_unlock_n - " failed, thread exiting"); - } -} |