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