Seastar
High performance C++ framework for concurrent servers
Classes | Public Member Functions | Static Public Attributes | List of all members
seastar::io_queue Class Reference

Classes

struct  config
 
struct  request_limits
 

Public Member Functions

 io_queue (io_group_ptr group, internal::io_sink &sink)
 
fair_queue_ticket request_fq_ticket (const internal::io_request &req, size_t len) const
 
future< size_t > queue_request (const io_priority_class &pc, size_t len, internal::io_request req, io_intent *intent) noexcept
 
void submit_request (io_desc_read_write *desc, internal::io_request req) noexcept
 
void cancel_request (queued_io_request &req) noexcept
 
void complete_cancelled_request (queued_io_request &req) noexcept
 
size_t capacity () const
 
size_t queued_requests () const
 
size_t requests_currently_executing () const
 
void notify_requests_finished (fair_queue_ticket &desc) noexcept
 
void poll_io_queue ()
 
std::chrono::steady_clock::time_point next_pending_aio () const noexcept
 
sstring mountpoint () const
 
dev_t dev_id () const noexcept
 
future update_shares_for_class (io_priority_class pc, size_t new_shares)
 
void rename_priority_class (io_priority_class pc, sstring new_name)
 
request_limits get_request_limits () const noexcept
 

Static Public Attributes

static constexpr unsigned read_request_base_count = 128
 
static constexpr unsigned request_ticket_size_shift = 9
 
static constexpr unsigned minimal_request_size = 512
 

Class Documentation

◆ seastar::io_queue::config

struct seastar::io_queue::config
Class Members
unsigned capacity
dev_t devid
unsigned disk_bytes_write_to_read_multiplier
size_t disk_read_saturation_length
unsigned disk_req_write_to_read_multiplier
float disk_us_per_byte
float disk_us_per_request
size_t disk_write_saturation_length
unsigned max_bytes_count
unsigned max_req_count
sstring mountpoint

◆ seastar::io_queue::request_limits

struct seastar::io_queue::request_limits
Class Members
size_t max_read
size_t max_write

The documentation for this class was generated from the following file: