summaryrefslogtreecommitdiffhomepage
path: root/src/core
diff options
context:
space:
mode:
Diffstat (limited to 'src/core')
-rw-r--r--src/core/ngx_file.c9
-rw-r--r--src/core/ngx_file.h1
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;