diff options
Diffstat (limited to 'src/core')
| -rw-r--r-- | src/core/ngx_file.c | 9 | ||||
| -rw-r--r-- | src/core/ngx_file.h | 1 |
2 files changed, 10 insertions, 0 deletions
diff --git a/src/core/ngx_file.c b/src/core/ngx_file.c index 3ebd73d8b..2dc222865 100644 --- a/src/core/ngx_file.c +++ b/src/core/ngx_file.c @@ -124,6 +124,15 @@ ngx_write_chain_to_temp_file(ngx_temp_file_t *tf, ngx_chain_t *chain) } } +#if (NGX_THREADS && NGX_HAVE_PWRITEV) + + if (tf->thread_write) { + return ngx_thread_write_chain_to_file(&tf->file, chain, tf->offset, + tf->pool); + } + +#endif + return ngx_write_chain_to_file(&tf->file, chain, tf->offset, tf->pool); } diff --git a/src/core/ngx_file.h b/src/core/ngx_file.h index aeb6c0cb2..5f8228b7b 100644 --- a/src/core/ngx_file.h +++ b/src/core/ngx_file.h @@ -78,6 +78,7 @@ typedef struct { unsigned log_level:8; unsigned persistent:1; unsigned clean:1; + unsigned thread_write:1; } ngx_temp_file_t; |
