Mercurial > hg > nginx
view src/os/win32/ngx_thread.h @ 531:c3bd8cdabb8f release-0.1.40
nginx-0.1.40-RELEASE import
*) Bugfix: if a client sent too long header line, then the request
information did not logged in the error log.
*) Bugfix: the "Set-Cookie" header line was not transferred when the
"X-Accel-Redirect" was used; the bug had appeared in 0.1.39.
*) Bugfix: the "Content-Disposition" header line was not transferred
when the "X-Accel-Redirect" was used.
*) Bugfix: the master process did not close the listen socket on the
SIGQUIT signal.
*) Bugfix: after on-line upgrade on Linux and Solaris the process name
became shorter in the "ps" command.
author | Igor Sysoev <igor@sysoev.ru> |
---|---|
date | Mon, 25 Jul 2005 09:41:38 +0000 |
parents | d4ea69372b94 |
children | 9c2f3ed7a247 |
line wrap: on
line source
/* * Copyright (C) Igor Sysoev */ #ifndef _NGX_THREAD_H_INCLUDED_ #define _NGX_THREAD_H_INCLUDED_ #include <ngx_config.h> #include <ngx_core.h> typedef HANDLE ngx_tid_t; typedef DWORD ngx_tls_key_t; typedef struct { HANDLE mutex; ngx_log_t *log; } ngx_mutex_t; ngx_err_t ngx_create_thread(ngx_tid_t *tid, void* (*func)(void *arg), void *arg, ngx_log_t *log); ngx_int_t ngx_init_threads(int n, size_t size, ngx_cycle_t *cycle); ngx_err_t ngx_thread_key_create(ngx_tls_key_t *key); #define ngx_thread_key_create_n "TlsAlloc()" ngx_err_t ngx_thread_set_tls(ngx_tls_key_t *key, void *data); #define ngx_thread_set_tls_n "TlsSetValue()" #define ngx_thread_get_tls TlsGetValue #define ngx_thread_volatile volatile #define ngx_log_tid GetCurrentThreadId() #define NGX_TID_T_FMT "%ud" ngx_mutex_t *ngx_mutex_init(ngx_log_t *log, ngx_uint_t flags); ngx_int_t ngx_mutex_lock(ngx_mutex_t *m); ngx_int_t ngx_mutex_trylock(ngx_mutex_t *m); /* STUB */ #define NGX_MUTEX_LIGHT 0 #define ngx_mutex_unlock(m) /**/ extern ngx_int_t ngx_threads_n; #endif /* _NGX_THREAD_H_INCLUDED_ */