25#ifndef JOIN_CORE_IO_POLICY_HPP
26#define JOIN_CORE_IO_POLICY_HPP
37 static constexpr uint32_t
flags = 0;
43 static constexpr uint32_t
flags = 0;
44 static constexpr uint64_t
spinNs = 10'000;
45 static constexpr uint64_t
yieldNs = 100'000;
47 static constexpr uint64_t
tickNs = 100;
53 static constexpr uint32_t
flags = IORING_SETUP_SQPOLL;
55 static constexpr uint64_t
spinNs = 10'000;
56 static constexpr uint64_t
yieldNs = 100'000;
58 static constexpr uint64_t
tickNs = 100;
62 inline constexpr bool has_sqpoll_v = (T::flags & IORING_SETUP_SQPOLL) != 0;
74 inline constexpr bool has_spin_v =
requires { T::spinNs; };
102 template <
typename T>
106 template <
typename T>
109 template <
typename T>
112 template <
typename T>
Definition acceptor.hpp:32
constexpr bool has_cq_entries_v
Definition io_policy.hpp:65
constexpr bool has_sleep_ns_v
Definition io_policy.hpp:97
constexpr uint64_t yield_ns_v< T >
Definition io_policy.hpp:94
constexpr bool has_tick_ns_v
Definition io_policy.hpp:107
constexpr uint64_t spin_ns_v< T >
Definition io_policy.hpp:84
constexpr bool has_sq_thread_cpu_v
Definition io_policy.hpp:71
constexpr uint64_t spin_ns_v
Definition io_policy.hpp:80
constexpr bool has_yield_ns_v
Definition io_policy.hpp:87
constexpr uint64_t sleep_ns_v< T >
Definition io_policy.hpp:104
constexpr bool has_sq_thread_idle_v
Definition io_policy.hpp:68
constexpr uint64_t sleep_ns_v
Definition io_policy.hpp:100
constexpr bool has_spin_v
Definition io_policy.hpp:74
constexpr uint64_t tick_ns_v< T >
Definition io_policy.hpp:114
constexpr bool is_default_v
Definition io_policy.hpp:77
constexpr bool has_sqpoll_v
Definition io_policy.hpp:62
constexpr uint64_t tick_ns_v
Definition io_policy.hpp:110
constexpr uint64_t yield_ns_v
Definition io_policy.hpp:90
Definition io_policy.hpp:35
static constexpr uint32_t sqEntries
Definition io_policy.hpp:36
static constexpr uint32_t flags
Definition io_policy.hpp:37
Definition io_policy.hpp:41
static constexpr uint32_t sqEntries
Definition io_policy.hpp:42
static constexpr uint64_t sleepNs
Definition io_policy.hpp:46
static constexpr uint64_t yieldNs
Definition io_policy.hpp:45
static constexpr uint64_t spinNs
Definition io_policy.hpp:44
static constexpr uint64_t tickNs
Definition io_policy.hpp:47
static constexpr uint32_t flags
Definition io_policy.hpp:43
Definition io_policy.hpp:51
static constexpr uint32_t flags
Definition io_policy.hpp:53
static constexpr uint64_t yieldNs
Definition io_policy.hpp:56
static constexpr uint64_t spinNs
Definition io_policy.hpp:55
static constexpr uint64_t sleepNs
Definition io_policy.hpp:57
static constexpr uint32_t sqEntries
Definition io_policy.hpp:52
static constexpr uint64_t tickNs
Definition io_policy.hpp:58
static constexpr uint32_t sqThreadIdle
Definition io_policy.hpp:54