diff options
-rw-r--r-- | src/config.hpp | 4 | ||||
-rw-r--r-- | src/swap.cpp | 5 | ||||
-rw-r--r-- | src/swap.hpp | 2 |
3 files changed, 8 insertions, 3 deletions
diff --git a/src/config.hpp b/src/config.hpp index 83e612a..0fe7c57 100644 --- a/src/config.hpp +++ b/src/config.hpp @@ -62,6 +62,10 @@ namespace zmq // Maximal delta between high and low watermark. max_wm_delta = 1024, + // Swap inteligently batches data for writing to disk. The size of + // the batch in bytes is specified by this option. + swap_block_size = 8192, + // Maximum number of events the I/O thread can process in one go. max_io_events = 256, diff --git a/src/swap.cpp b/src/swap.cpp index cf73576..7a2234d 100644 --- a/src/swap.cpp +++ b/src/swap.cpp @@ -36,16 +36,17 @@ #include <algorithm> #include "swap.hpp" +#include "config.hpp" #include "atomic_counter.hpp" #include "err.hpp" -zmq::swap_t::swap_t (int64_t filesize_, size_t block_size_) : +zmq::swap_t::swap_t (int64_t filesize_) : fd (-1), filesize (filesize_), file_pos (0), write_pos (0), read_pos (0), - block_size (block_size_), + block_size (swap_block_size), write_buf_start_addr (0) { zmq_assert (filesize > 0); diff --git a/src/swap.hpp b/src/swap.hpp index c9dfd99..76ad339 100644 --- a/src/swap.hpp +++ b/src/swap.hpp @@ -38,7 +38,7 @@ namespace zmq enum { default_block_size = 8192 }; // Creates the swap. - swap_t (int64_t filesize_, size_t block_size_ = default_block_size); + swap_t (int64_t filesize_); ~swap_t (); |