Mercurial > hg > nginx-quic
changeset 2627:c9da3e4dc706
ngx_process_tray()
author | Igor Sysoev <igor@sysoev.ru> |
---|---|
date | Mon, 30 Mar 2009 14:46:33 +0000 |
parents | b0cfe5f66e8d |
children | 64a10d6b97bd |
files | src/os/win32/ngx_process_cycle.c |
diffstat | 1 files changed, 44 insertions(+), 38 deletions(-) [+] |
line wrap: on
line diff
--- a/src/os/win32/ngx_process_cycle.c +++ b/src/os/win32/ngx_process_cycle.c @@ -11,6 +11,7 @@ static ngx_thread_value_t __stdcall ngx_worker_thread_cycle(void *data); +static void ngx_process_tray(ngx_cycle_t *cycle); static long __stdcall ngx_window_procedure(HWND window, u_int message, u_int wparam, long lparam); @@ -57,16 +58,9 @@ ngx_master_process_cycle(ngx_cycle_t *cy void ngx_single_process_cycle(ngx_cycle_t *cycle) { - int rc; ngx_int_t i; ngx_err_t err; ngx_tid_t tid; - MSG message; - HWND window; - HMENU menu; - HICON icon,tray; - WNDCLASS wc; - HINSTANCE instance; ngx_core_conf_t *ccf; ngx_init_temp_number(); @@ -80,11 +74,10 @@ ngx_single_process_cycle(ngx_cycle_t *cy } } - ccf = (ngx_core_conf_t *) ngx_get_conf(cycle->conf_ctx, ngx_core_module); - if (ngx_init_threads(ngx_threads_n, - ccf->thread_stack_size, cycle) == NGX_ERROR) + if (ngx_init_threads(ngx_threads_n, ccf->thread_stack_size, cycle) + != NGX_OK) { /* fatal */ exit(2); @@ -98,6 +91,44 @@ ngx_single_process_cycle(ngx_cycle_t *cy exit(2); } + if (ngx_create_thread(&tid, ngx_worker_thread_cycle, NULL, cycle->log) + != 0) + { + /* fatal */ + exit(2); + } + + ngx_process_tray(cycle); +} + + +static ngx_thread_value_t __stdcall +ngx_worker_thread_cycle(void *data) +{ + ngx_cycle_t *cycle; + + cycle = (ngx_cycle_t *) ngx_cycle; + + while (!ngx_quit) { + ngx_log_debug0(NGX_LOG_DEBUG_EVENT, cycle->log, 0, "worker cycle"); + + ngx_process_events_and_timers(cycle); + } + + return 0; +} + + +static void +ngx_process_tray(ngx_cycle_t *cycle) +{ + int rc; + MSG message; + HWND window; + HMENU menu; + HICON icon, tray; + WNDCLASS wc; + HINSTANCE instance; instance = GetModuleHandle(NULL); @@ -152,7 +183,6 @@ ngx_single_process_cycle(ngx_cycle_t *cy exit(2); } - window = CreateWindow("nginx", "nginx", WS_OVERLAPPEDWINDOW, CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT, @@ -175,14 +205,6 @@ ngx_single_process_cycle(ngx_cycle_t *cy exit(2); } - - if (ngx_create_thread(&tid, ngx_worker_thread_cycle, NULL, cycle->log) != 0) - { - /* fatal */ - exit(2); - } - - for ( ;; ) { rc = GetMessage(&message, NULL, 0, 0); @@ -202,23 +224,6 @@ ngx_single_process_cycle(ngx_cycle_t *cy } -static ngx_thread_value_t __stdcall -ngx_worker_thread_cycle(void *data) -{ - ngx_cycle_t *cycle; - - cycle = (ngx_cycle_t *) ngx_cycle; - - while (!ngx_quit) { - ngx_log_debug0(NGX_LOG_DEBUG_EVENT, cycle->log, 0, "worker cycle"); - - ngx_process_events_and_timers(cycle); - } - - return 0; -} - - static long __stdcall ngx_window_procedure(HWND window, u_int message, u_int wparam, long lparam) { @@ -241,7 +246,8 @@ ngx_window_procedure(HWND window, u_int } if (TrackPopupMenu(ngx_menu, TPM_RIGHTBUTTON, - mouse.x, mouse.y, 0, window, NULL) == 0) + mouse.x, mouse.y, 0, window, NULL) + == 0) { ngx_log_error(NGX_LOG_ALERT, ngx_cycle->log, ngx_errno, "TrackPopupMenu() failed"); @@ -254,7 +260,7 @@ ngx_window_procedure(HWND window, u_int case WM_COMMAND: if (wparam == NGX_WM_ABOUT) { ngx_message_box("nginx", MB_OK, 0, - NGINX_VER CRLF "(C) 2002-2005 Igor Sysoev"); + NGINX_VER CRLF "(C) 2002-2009 Igor Sysoev"); return 0; }