Condy v1.8
C++ Asynchronous System Call Layer for Linux
Loading...
Searching...
No Matches
condy::Runtime Class Reference

The event loop runtime for executing asynchronous. More...

#include <runtime.hpp>

Public Member Functions

 Runtime (const RuntimeOptions &options={})
 Construct a new Runtime object.
void allow_exit () noexcept
 Allow the runtime to exit when there are no pending works.
void run ()
 Run the runtime event loop in the current thread.
auto & fd_table () noexcept
 Get the file descriptor table of the runtime.
auto & buffer_table () noexcept
 Get the buffer table of the runtime.
auto & settings () noexcept
 Get the ring settings of the runtime.

Detailed Description

The event loop runtime for executing asynchronous.

This class provides a single-threaded runtime for executing asynchronous tasks using io_uring. It manages the event loop, scheduling, and execution of tasks, as well as inter-runtime notifications.

Definition at line 36 of file runtime.hpp.

Constructor & Destructor Documentation

◆ Runtime()

condy::Runtime::Runtime ( const RuntimeOptions & options = {})
inline

Construct a new Runtime object.

Parameters
optionsOptions for configuring the runtime.

Definition at line 42 of file runtime.hpp.

Member Function Documentation

◆ allow_exit()

void condy::Runtime::allow_exit ( )
inlinenoexcept

Allow the runtime to exit when there are no pending works.

By default, the runtime will keep running even if there are no pending works. Calling this function will allow the runtime to exit once all pending works are completed.

Note
This function is thread-safe and can be called from any thread.

Definition at line 131 of file runtime.hpp.

◆ buffer_table()

auto & condy::Runtime::buffer_table ( )
inlinenoexcept

Get the buffer table of the runtime.

Returns
BufferTable& Reference to the buffer table of the runtime.

Definition at line 206 of file runtime.hpp.

◆ fd_table()

auto & condy::Runtime::fd_table ( )
inlinenoexcept

Get the file descriptor table of the runtime.

Returns
FdTable& Reference to the fd table of the runtime.

Definition at line 200 of file runtime.hpp.

◆ run()

void condy::Runtime::run ( )
inline

Run the runtime event loop in the current thread.

Runs the event loop in the current thread until there are no pending works and exit is allowed. Can be called multiple times from the same thread.

Note
This function can only be called from one thread. Calling it from multiple threads, either concurrently or sequentially is not allowed.

Definition at line 144 of file runtime.hpp.

◆ settings()

auto & condy::Runtime::settings ( )
inlinenoexcept

Get the ring settings of the runtime.

Returns
RingSettings& Reference to the ring settings of the runtime.

Definition at line 212 of file runtime.hpp.


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