Mercurial > hg > nginx
comparison src/os/unix/ngx_process_cycle.c @ 370:54f76b0b8dca
nginx-0.0.7-2004-06-27-22:01:57 import
author | Igor Sysoev <igor@sysoev.ru> |
---|---|
date | Sun, 27 Jun 2004 18:01:57 +0000 |
parents | e411b1482ee3 |
children | 780e93985b93 |
comparison
equal
deleted
inserted
replaced
369:9c2515d70489 | 370:54f76b0b8dca |
---|---|
623 if (ngx_init_threads(5, 128 * 1024 * 1024, cycle) == NGX_ERROR) { | 623 if (ngx_init_threads(5, 128 * 1024 * 1024, cycle) == NGX_ERROR) { |
624 /* fatal */ | 624 /* fatal */ |
625 exit(2); | 625 exit(2); |
626 } | 626 } |
627 | 627 |
628 if (!(ngx_posted_events_cv = ngx_cv_init(cycle->log))) { | |
629 /* fatal */ | |
630 exit(2); | |
631 } | |
632 | |
633 ngx_posted_events_mutex = &ngx_posted_events_cv->mutex; | |
634 | |
628 for (i = 0; i < 1; i++) { | 635 for (i = 0; i < 1; i++) { |
629 if (ngx_create_thread(&tid, ngx_worker_thread_cycle, | 636 if (ngx_create_thread(&tid, ngx_worker_thread_cycle, |
630 cycle, cycle->log) != 0) | 637 cycle, cycle->log) != 0) |
631 { | 638 { |
632 /* fatal */ | 639 /* fatal */ |
765 ngx_log_error(NGX_LOG_ALERT, cycle->log, err, | 772 ngx_log_error(NGX_LOG_ALERT, cycle->log, err, |
766 ngx_thread_sigmask_n " failed"); | 773 ngx_thread_sigmask_n " failed"); |
767 return 1; | 774 return 1; |
768 } | 775 } |
769 | 776 |
770 | |
771 /* STUB */ | |
772 | |
773 ngx_log_debug1(NGX_LOG_DEBUG_CORE, ngx_cycle->log, ngx_errno, | 777 ngx_log_debug1(NGX_LOG_DEBUG_CORE, ngx_cycle->log, ngx_errno, |
774 "thread %d started", ngx_thread_self()); | 778 "thread %d started", ngx_thread_self()); |
775 | 779 |
776 ngx_setproctitle("worker thread"); | 780 ngx_setproctitle("worker thread"); |
777 | 781 |
778 sleep(5); | 782 for ( ;; ) { |
779 | 783 if (ngx_cv_wait(ngx_posted_events_cv) == NGX_ERROR) { |
780 ngx_gettimeofday(&tv); | 784 return 1; |
781 ngx_time_update(tv.tv_sec); | 785 } |
786 | |
787 if (ngx_event_thread_process_posted(cycle) == NGX_ERROR) { | |
788 return 1; | |
789 } | |
790 } | |
782 | 791 |
783 ngx_log_debug1(NGX_LOG_DEBUG_CORE, ngx_cycle->log, ngx_errno, | 792 ngx_log_debug1(NGX_LOG_DEBUG_CORE, ngx_cycle->log, ngx_errno, |
784 "thread %d done", ngx_thread_self()); | 793 "thread %d done", ngx_thread_self()); |
785 | 794 |
786 return 1; | 795 return 0; |
787 } | 796 } |
788 | 797 |
789 #endif | 798 #endif |