asio C++ library

PrevUpHomeNext

Reference

Properties

Execution

Customisation Points

prefer
query
require
require_concept

Traits

can_prefer
can_query
can_require
can_require_concept
is_nothrow_prefer
is_nothrow_query
is_nothrow_require
is_nothrow_require_concept
prefer_result
query_result
require_result
require_concept_result

Class Templates

execution::any_executor

Classes

execution::bad_executor
execution::invocable_archetype
execution::receiver_invocation_error

Properties

execution::allocator_t
execution::blocking_t
execution::blocking_t::possibly_t
execution::blocking_t::always_t
execution::blocking_t::never_t
execution::blocking_adaptation_t
execution::blocking_adaptation_t::disallowed_t
execution::blocking_adaptation_t::allowed_t
execution::bulk_guarantee_t
execution::bulk_guarantee_t::unsequenced_t
execution::bulk_guarantee_t::sequenced_t
execution::bulk_guarantee_t::parallel_t
execution::context_t
execution::context_as_t
execution::mapping_t
execution::mapping_t::thread_t
execution::mapping_t::new_thread_t
execution::mapping_t::other_t
execution::occupancy_t
execution::outstanding_work_t
execution::outstanding_work_t::untracked_t
execution::outstanding_work_t::tracked_t
execution::prefer_only
execution::relationship_t
execution::relationship_t::fork_t
execution::relationship_t::continuation_t

Customisation Points

execution::bulk_execute
execution::connect
execution::execute
execution::schedule
execution::set_done
execution::set_error
execution::set_value
execution::start
execution::submit

Property Objects

execution::allocator
execution::blocking
execution::blocking.possibly
execution::blocking.always
execution::blocking.never
execution::blocking_adaptation
execution::blocking_adaptation.disallowed
execution::blocking_adaptation.allowed
execution::bulk_guarantee
execution::bulk_guarantee.unsequenced
execution::bulk_guarantee.sequenced
execution::bulk_guarantee.parallel
execution::context
execution::context_as
execution::mapping
execution::mapping.thread
execution::mapping.new_thread
execution::mapping.other
execution::occupancy
execution::outstanding_work
execution::outstanding_work.untracked
execution::outstanding_work.tracked
execution::relationship
execution::relationship.fork
execution::relationship.continuation

Type Traits

execution::can_bulk_execute
execution::can_connect
execution::can_execute
execution::can_schedule
execution::can_set_done
execution::can_set_error
execution::can_set_value
execution::can_start
execution::can_submit
execution::connect_result
execution::is_executor
execution::is_executor_of
execution::is_nothrow_receiver_of
execution::is_receiver
execution::is_receiver_of
execution::is_sender
execution::is_sender_to
execution::is_typed_sender
execution::sender_traits

Concepts

executor
executor_of
operation_state
receiver
receiver_of
scheduler
sender
sender_to
typed_sender

Core

Classes

any_io_executor
bad_executor
cancellation_signal
cancellation_slot
cancellation_state
cancellation_type
coroutine
detached_t
error_code
execution_context
execution_context::id
execution_context::service
executor
executor_arg_t
invalid_service_owner
io_context
io_context::executor_type
io_context::service
io_context::strand
io_context::work (deprecated)
multiple_exceptions
service_already_exists
static_thread_pool
system_context
system_error
system_executor
this_coro::executor_t
thread
thread_pool
thread_pool::executor_type
yield_context

Free Functions

add_service
experimental::append
experimental::as_single
experimental::as_tuple
experimental::make_parallel_group
experimental::prepend
asio_handler_allocate (deprecated)
asio_handler_deallocate (deprecated)
asio_handler_invoke (deprecated)
asio_handler_is_continuation
async_compose
async_initiate
bind_allocator
bind_cancellation_slot
bind_executor
co_spawn
dispatch
defer
get_associated_allocator
get_associated_cancellation_slot
get_associated_executor
has_service
make_strand
make_work_guard
post
redirect_error
spawn
this_coro::reset_cancellation_state
this_coro::throw_if_cancelled
use_service

Class Templates

async_completion
awaitable
basic_io_object
basic_system_executor
basic_yield_context
cancellation_filter
cancellation_slot_binder
experimental::deferred_t
executor_binder
executor_work_guard
experimental::append_t
experimental::as_single_t
experimental::as_tuple_t
experimental::basic_channel
experimental::basic_concurrent_channel
experimental::channel_traits
experimental::coro
experimental::parallel_group
experimental::prepend_t
experimental::promise
experimental::use_coro_t
experimental::wait_for_all
experimental::wait_for_one
experimental::wait_for_one_error
experimental::wait_for_one_success
io_context::basic_executor_type
recycling_allocator
redirect_error_t
strand
thread_pool::basic_executor_type
use_awaitable_t
use_future_t

Special Values

detached
executor_arg
experimental::deferred
experimental::use_coro
this_coro::cancellation_state
this_coro::executor
use_future
use_awaitable

Error Codes

error::basic_errors
error::netdb_errors
error::addrinfo_errors
error::misc_errors

Boost.Bind Placeholders

placeholders::bytes_transferred
placeholders::endpoint
placeholders::error
placeholders::iterator
placeholders::results
placeholders::signal_number

Type Traits

associated_allocator
associated_cancellation_slot
associated_executor
associator
async_result
default_completion_token
is_executor
uses_executor

Type Requirements

Asynchronous operations
CancellationHandler
CancellationSlot
ExecutionContext
Executor
Handler
NullaryToken
Service

Buffers and Buffer-Oriented Operations

Classes

const_buffer
mutable_buffer
const_buffers_1 (deprecated)
mutable_buffers_1 (deprecated)
const_registered_buffer
mutable_registered_buffer
null_buffers (deprecated)
streambuf
registered_buffer_id

Class Templates

basic_streambuf
buffer_registration
buffered_read_stream
buffered_stream
buffered_write_stream
buffers_iterator
dynamic_string_buffer
dynamic_vector_buffer

Free Functions

async_read
async_read_at
async_read_until
async_write
async_write_at
buffer
buffer_cast (deprecated)
buffer_copy
buffer_size
buffer_sequence_begin
buffer_sequence_end
buffers_begin
buffers_end
dynamic_buffer
read
read_at
read_until
register_buffers
transfer_all
transfer_at_least
transfer_exactly
write
write_at

Type Traits

is_const_buffer_sequence
is_dynamic_buffer
is_dynamic_buffer_v1
is_dynamic_buffer_v2
is_match_condition
is_mutable_buffer_sequence
is_read_buffered
is_write_buffered

Type Requirements

Read and write operations
AsyncRandomAccessReadDevice
AsyncRandomAccessWriteDevice
AsyncReadStream
AsyncWriteStream
CompletionCondition
ConstBufferSequence
DynamicBuffer
DynamicBuffer_v1
DynamicBuffer_v2
MutableBufferSequence
ReadHandler
ReadToken
SyncRandomAccessReadDevice
SyncRandomAccessWriteDevice
SyncReadStream
SyncWriteStream
WriteHandler
WriteToken

Networking

Classes

generic::datagram_protocol
generic::datagram_protocol::endpoint
generic::datagram_protocol::socket
generic::raw_protocol
generic::raw_protocol::endpoint
generic::raw_protocol::socket
generic::seq_packet_protocol
generic::seq_packet_protocol::endpoint
generic::seq_packet_protocol::socket
generic::stream_protocol
generic::stream_protocol::endpoint
generic::stream_protocol::iostream
generic::stream_protocol::socket
ip::address
ip::address_v4
ip::address_v4_iterator
ip::address_v4_range
ip::address_v6
ip::address_v6_iterator
ip::address_v6_range
ip::bad_address_cast
ip::icmp
ip::icmp::endpoint
ip::icmp::resolver
ip::icmp::socket
ip::network_v4
ip::network_v6
ip::resolver_base
ip::resolver_query_base
ip::tcp
ip::tcp::acceptor
ip::tcp::endpoint
ip::tcp::iostream
ip::tcp::resolver
ip::tcp::socket
ip::udp
ip::udp::endpoint
ip::udp::resolver
ip::udp::socket
ip::v4_mapped_t
socket_base

Free Functions

async_connect
connect
ip::host_name
ip::make_address
ip::make_address_v4
ip::make_address_v6
ip::make_network_v4
ip::make_network_v6

Class Templates

basic_datagram_socket
basic_raw_socket
basic_seq_packet_socket
basic_socket
basic_socket_acceptor
basic_socket_iostream
basic_socket_streambuf
basic_stream_socket
generic::basic_endpoint
ip::basic_endpoint
ip::basic_resolver
ip::basic_resolver_entry
ip::basic_resolver_iterator
ip::basic_resolver_results
ip::basic_resolver_query

Socket Options

ip::multicast::enable_loopback
ip::multicast::hops
ip::multicast::join_group
ip::multicast::leave_group
ip::multicast::outbound_interface
ip::tcp::no_delay
ip::unicast::hops
ip::v6_only
socket_base::broadcast
socket_base::debug
socket_base::do_not_route
socket_base::enable_connection_aborted
socket_base::keep_alive
socket_base::linger
socket_base::receive_buffer_size
socket_base::receive_low_watermark
socket_base::reuse_address
socket_base::send_buffer_size
socket_base::send_low_watermark

I/O Control Commands

socket_base::bytes_readable

Type Requirements

Synchronous socket operations
Asynchronous socket operations
AcceptableProtocol
AcceptHandler
AcceptToken
ConnectCondition
ConnectHandler
ConnectToken
Endpoint
EndpointSequence
GettableSocketOption
InternetProtocol
IoControlCommand
IteratorConnectHandler
IteratorConnectToken
MoveAcceptHandler
MoveAcceptToken
Protocol
RangeConnectHandler
RangeConnectToken
ResolveHandler
ResolveToken
SettableSocketOption

Timers

SSL

Serial Ports

Signal Handling

Classes

deadline_timer
high_resolution_timer
steady_timer
system_timer

Class Templates

basic_deadline_timer
basic_waitable_timer
time_traits
wait_traits

Type Requirements

TimeTraits
WaitHandler
WaitToken
WaitTraits

Classes

ssl::context
ssl::context_base
ssl::host_name_verification
ssl::rfc2818_verification (deprecated)
ssl::stream_base
ssl::verify_context

Class Templates

ssl::stream

Error Codes

ssl::error::stream_errors

Type Requirements

BufferedHandshakeHandler
BufferedHandshakeToken
HandshakeHandler
HandshakeToken
ShutdownHandler
ShutdownToken

Classes

serial_port
serial_port_base

Class templates

basic_serial_port

Serial Port Options

serial_port_base::baud_rate
serial_port_base::flow_control
serial_port_base::parity
serial_port_base::stop_bits
serial_port_base::character_size

Type Requirements

GettableSerialPortOption
SettableSerialPortOption

Classes

signal_set

Class Templates

basic_signal_set

Type Requirements

SignalHandler
SignalToken

Files and Pipes

POSIX-specific

Windows-specific

Class Templates

basic_file
basic_random_access_file
basic_readable_pipe
basic_stream_file
basic_writable_pipe

Classes

file_base
random_access_file
readable_pipe
stream_file
writable_pipe

Free Functions

connect_pipe

Classes

local::stream_protocol
local::stream_protocol::acceptor
local::stream_protocol::endpoint
local::stream_protocol::iostream
local::stream_protocol::socket
local::datagram_protocol
local::datagram_protocol::endpoint
local::datagram_protocol::socket
posix::descriptor
posix::descriptor_base
posix::stream_descriptor

Free Functions

local::connect_pair

Class Templates

local::basic_endpoint
posix::basic_descriptor
posix::basic_stream_descriptor

Classes

windows::object_handle
windows::overlapped_handle
windows::overlapped_ptr
windows::random_access_handle
windows::stream_handle

Class Templates

windows::basic_object_handle
windows::basic_overlapped_handle
windows::basic_random_access_handle
windows::basic_stream_handle

PrevUpHomeNext