Mercurial > hg > nginx
comparison src/os/win32/ngx_process_cycle.c @ 3352:5c43621c580a
a cache manager thread handle was overwritten by a cache loader thread handle,
this caused an exit delay, the bug had been introduced in r3023
author | Igor Sysoev <igor@sysoev.ru> |
---|---|
date | Tue, 17 Nov 2009 16:46:27 +0000 |
parents | f9d97311c652 |
children | d4c4cfdffe30 |
comparison
equal
deleted
inserted
replaced
3351:b759cf8f6000 | 3352:5c43621c580a |
---|---|
597 char wqevn[NGX_PROCESS_SYNC_NAME]; | 597 char wqevn[NGX_PROCESS_SYNC_NAME]; |
598 char wroevn[NGX_PROCESS_SYNC_NAME]; | 598 char wroevn[NGX_PROCESS_SYNC_NAME]; |
599 HANDLE mev, events[3]; | 599 HANDLE mev, events[3]; |
600 u_long nev, ev; | 600 u_long nev, ev; |
601 ngx_err_t err; | 601 ngx_err_t err; |
602 ngx_tid_t wtid, cmtid; | 602 ngx_tid_t wtid, cmtid, cltid; |
603 ngx_log_t *log; | 603 ngx_log_t *log; |
604 | 604 |
605 log = cycle->log; | 605 log = cycle->log; |
606 | 606 |
607 ngx_log_debug0(NGX_LOG_DEBUG_CORE, log, 0, "worker started"); | 607 ngx_log_debug0(NGX_LOG_DEBUG_CORE, log, 0, "worker started"); |
669 | 669 |
670 if (ngx_create_thread(&cmtid, ngx_cache_manager_thread, NULL, log) != 0) { | 670 if (ngx_create_thread(&cmtid, ngx_cache_manager_thread, NULL, log) != 0) { |
671 goto failed; | 671 goto failed; |
672 } | 672 } |
673 | 673 |
674 if (ngx_create_thread(&cmtid, ngx_cache_loader_thread, NULL, log) != 0) { | 674 if (ngx_create_thread(&cltid, ngx_cache_loader_thread, NULL, log) != 0) { |
675 goto failed; | 675 goto failed; |
676 } | 676 } |
677 | 677 |
678 for ( ;; ) { | 678 for ( ;; ) { |
679 ev = WaitForMultipleObjects(3, events, 0, INFINITE); | 679 ev = WaitForMultipleObjects(3, events, 0, INFINITE); |