Mercurial > hg > nginx-quic
annotate src/os/win32/ngx_thread.c @ 4454:bd1a95dd6dd3 stable-1.0 release-1.0.12
nginx-1.0.12-RELEASE
author | Maxim Dounin <mdounin@mdounin.ru> |
---|---|
date | Mon, 06 Feb 2012 14:08:59 +0000 |
parents | 4919fb357a5d |
children | 2942a827da09 |
rev | line source |
---|---|
461 | 1 |
2 /* | |
3 * Copyright (C) Igor Sysoev | |
4450
4919fb357a5d
Merge of r4406, r4413: copyrights updated.
Maxim Dounin <mdounin@mdounin.ru>
parents:
2725
diff
changeset
|
4 * Copyright (C) Nginx, Inc. |
461 | 5 */ |
6 | |
7 | |
8 #include <ngx_config.h> | |
9 #include <ngx_core.h> | |
10 | |
11 | |
12 ngx_int_t ngx_threads_n; | |
13 | |
14 | |
15 static size_t stack_size; | |
16 | |
17 | |
563 | 18 ngx_err_t |
19 ngx_create_thread(ngx_tid_t *tid, | |
20 ngx_thread_value_t (__stdcall *func)(void *arg), void *arg, ngx_log_t *log) | |
461 | 21 { |
2725 | 22 u_long id; |
461 | 23 ngx_err_t err; |
24 | |
2725 | 25 *tid = CreateThread(NULL, stack_size, func, arg, 0, &id); |
461 | 26 |
27 if (*tid != NULL) { | |
2725 | 28 ngx_log_error(NGX_LOG_NOTICE, log, 0, |
29 "create thread " NGX_TID_T_FMT, id); | |
461 | 30 return 0; |
31 } | |
32 | |
33 err = ngx_errno; | |
34 ngx_log_error(NGX_LOG_ALERT, log, err, "CreateThread() failed"); | |
35 return err; | |
36 } | |
37 | |
38 | |
563 | 39 ngx_int_t |
40 ngx_init_threads(int n, size_t size, ngx_cycle_t *cycle) | |
461 | 41 { |
42 stack_size = size; | |
43 | |
44 return NGX_OK; | |
45 } | |
46 | |
47 | |
563 | 48 ngx_err_t |
49 ngx_thread_key_create(ngx_tls_key_t *key) | |
461 | 50 { |
51 *key = TlsAlloc(); | |
52 | |
53 if (*key == TLS_OUT_OF_INDEXES) { | |
54 return ngx_errno; | |
55 } | |
56 | |
57 return 0; | |
58 } | |
59 | |
60 | |
563 | 61 ngx_err_t |
62 ngx_thread_set_tls(ngx_tls_key_t *key, void *data) | |
461 | 63 { |
64 if (TlsSetValue(*key, data) == 0) { | |
65 return ngx_errno; | |
66 } | |
67 | |
68 return 0; | |
69 } | |
70 | |
71 | |
563 | 72 ngx_mutex_t * |
73 ngx_mutex_init(ngx_log_t *log, ngx_uint_t flags) | |
461 | 74 { |
75 return (ngx_mutex_t *) 1; | |
76 } | |
501 | 77 |
78 | |
79 /* STUB */ | |
80 | |
563 | 81 void |
501 | 82 ngx_mutex_lock(ngx_mutex_t *m) { |
563 | 83 return; |
501 | 84 } |
85 | |
86 | |
563 | 87 |
501 | 88 ngx_int_t |
89 ngx_mutex_trylock(ngx_mutex_t *m) { | |
90 return NGX_OK; | |
91 } | |
92 | |
563 | 93 |
94 void | |
95 ngx_mutex_unlock(ngx_mutex_t *m) { | |
96 return; | |
97 } | |
98 | |
501 | 99 /**/ |