Mercurial > hg > nginx-quic
comparison src/os/win32/ngx_thread.h @ 563:9c2f3ed7a247 release-0.3.3
nginx-0.3.3-RELEASE import
*) Change: the "bl" and "af" parameters of the "listen" directive was
renamed to the "backlog" and "accept_filter".
*) Feature: the "rcvbuf" and "sndbuf" parameters of the "listen"
directive.
*) Change: the "$msec" log parameter does not require now the
additional the gettimeofday() system call.
*) Feature: the -t switch now tests the "listen" directives.
*) Bugfix: if the invalid address was specified in the "listen"
directive, then after the -HUP signal nginx left an open socket in
the CLOSED state.
*) Bugfix: the mime type may be incorrectly set to default value for
index file with variable in the name; the bug had appeared in 0.3.0.
*) Feature: the "timer_resolution" directive.
*) Feature: the millisecond "$upstream_response_time" log parameter.
*) Bugfix: a temporary file with client request body now is removed
just after the response header was transferred to a client.
*) Bugfix: OpenSSL 0.9.6 compatibility.
*) Bugfix: the SSL certificate and key file paths could not be relative.
*) Bugfix: the "ssl_prefer_server_ciphers" directive did not work in
the ngx_imap_ssl_module.
*) Bugfix: the "ssl_protocols" directive allowed to specify the single
protocol only.
author | Igor Sysoev <igor@sysoev.ru> |
---|---|
date | Wed, 19 Oct 2005 12:33:58 +0000 |
parents | d4ea69372b94 |
children | d620f497c50f |
comparison
equal
deleted
inserted
replaced
562:4b6108f69026 | 563:9c2f3ed7a247 |
---|---|
12 #include <ngx_core.h> | 12 #include <ngx_core.h> |
13 | 13 |
14 | 14 |
15 typedef HANDLE ngx_tid_t; | 15 typedef HANDLE ngx_tid_t; |
16 typedef DWORD ngx_tls_key_t; | 16 typedef DWORD ngx_tls_key_t; |
17 typedef DWORD ngx_thread_value_t; | |
17 | 18 |
18 | 19 |
19 typedef struct { | 20 typedef struct { |
20 HANDLE mutex; | 21 HANDLE mutex; |
21 ngx_log_t *log; | 22 ngx_log_t *log; |
22 } ngx_mutex_t; | 23 } ngx_mutex_t; |
23 | 24 |
24 | 25 |
25 ngx_err_t ngx_create_thread(ngx_tid_t *tid, void* (*func)(void *arg), | 26 ngx_err_t ngx_create_thread(ngx_tid_t *tid, |
26 void *arg, ngx_log_t *log); | 27 ngx_thread_value_t (__stdcall *func)(void *arg), void *arg, ngx_log_t *log); |
27 ngx_int_t ngx_init_threads(int n, size_t size, ngx_cycle_t *cycle); | 28 ngx_int_t ngx_init_threads(int n, size_t size, ngx_cycle_t *cycle); |
28 | 29 |
29 ngx_err_t ngx_thread_key_create(ngx_tls_key_t *key); | 30 ngx_err_t ngx_thread_key_create(ngx_tls_key_t *key); |
30 #define ngx_thread_key_create_n "TlsAlloc()" | 31 #define ngx_thread_key_create_n "TlsAlloc()" |
31 ngx_err_t ngx_thread_set_tls(ngx_tls_key_t *key, void *data); | 32 ngx_err_t ngx_thread_set_tls(ngx_tls_key_t *key, void *data); |
39 #define NGX_TID_T_FMT "%ud" | 40 #define NGX_TID_T_FMT "%ud" |
40 | 41 |
41 | 42 |
42 ngx_mutex_t *ngx_mutex_init(ngx_log_t *log, ngx_uint_t flags); | 43 ngx_mutex_t *ngx_mutex_init(ngx_log_t *log, ngx_uint_t flags); |
43 | 44 |
44 ngx_int_t ngx_mutex_lock(ngx_mutex_t *m); | 45 void ngx_mutex_lock(ngx_mutex_t *m); |
45 ngx_int_t ngx_mutex_trylock(ngx_mutex_t *m); | 46 ngx_int_t ngx_mutex_trylock(ngx_mutex_t *m); |
47 void ngx_mutex_unlock(ngx_mutex_t *m); | |
46 | 48 |
47 | 49 |
48 /* STUB */ | 50 /* STUB */ |
49 #define NGX_MUTEX_LIGHT 0 | 51 #define NGX_MUTEX_LIGHT 0 |
50 | |
51 #define ngx_mutex_unlock(m) | |
52 /**/ | 52 /**/ |
53 | 53 |
54 | 54 |
55 extern ngx_int_t ngx_threads_n; | 55 extern ngx_int_t ngx_threads_n; |
56 | 56 |