mirror of
https://github.com/boostorg/asio.git
synced 2025-05-12 14:11:39 +00:00
The asio::config class provides access to configuration variables that are associated with an execution context. The class is intended for use by asio internals, or by libraries or user-provided abstractions that build on top of asio. These configuration variables will typically be used to fine tune behaviour, such as enabling or disabling certain optimisations. When constructing an execution context, such as an io_context, the caller may optionally pass a service_maker to install a concrete configuration service into the context. For example: asio::io_context ctx{asio::config_from_env{}}; The configuration variables' values are accessed by using the asio::config class, passing a section, key and default value: asio::config cfg{ctx}; bool enable_locking = cfg.get("scheduler", "locking", true); The initial set of configuration variables recognised by the asio internals correspond to the concurrency hint and its special values: "scheduler" / "concurrency_hint" (int) "scheduler" / "locking" (bool) "reactor" / "registration_locking" (bool) "reactor" / "io_locking" (bool)
205 lines
8.2 KiB
C++
205 lines
8.2 KiB
C++
//
|
|
// asio.hpp
|
|
// ~~~~~~~~
|
|
//
|
|
// Copyright (c) 2003-2024 Christopher M. Kohlhoff (chris at kohlhoff dot com)
|
|
//
|
|
// Distributed under the Boost Software License, Version 1.0. (See accompanying
|
|
// file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
|
|
//
|
|
// See www.boost.org/libs/asio for documentation.
|
|
//
|
|
|
|
#ifndef BOOST_ASIO_HPP
|
|
#define BOOST_ASIO_HPP
|
|
|
|
#if defined(_MSC_VER) && (_MSC_VER >= 1200)
|
|
# pragma once
|
|
#endif // defined(_MSC_VER) && (_MSC_VER >= 1200)
|
|
|
|
#include <boost/asio/any_completion_executor.hpp>
|
|
#include <boost/asio/any_completion_handler.hpp>
|
|
#include <boost/asio/any_io_executor.hpp>
|
|
#include <boost/asio/append.hpp>
|
|
#include <boost/asio/as_tuple.hpp>
|
|
#include <boost/asio/associated_allocator.hpp>
|
|
#include <boost/asio/associated_cancellation_slot.hpp>
|
|
#include <boost/asio/associated_executor.hpp>
|
|
#include <boost/asio/associated_immediate_executor.hpp>
|
|
#include <boost/asio/associator.hpp>
|
|
#include <boost/asio/async_result.hpp>
|
|
#include <boost/asio/awaitable.hpp>
|
|
#include <boost/asio/basic_datagram_socket.hpp>
|
|
#include <boost/asio/basic_deadline_timer.hpp>
|
|
#include <boost/asio/basic_file.hpp>
|
|
#include <boost/asio/basic_io_object.hpp>
|
|
#include <boost/asio/basic_random_access_file.hpp>
|
|
#include <boost/asio/basic_raw_socket.hpp>
|
|
#include <boost/asio/basic_readable_pipe.hpp>
|
|
#include <boost/asio/basic_seq_packet_socket.hpp>
|
|
#include <boost/asio/basic_serial_port.hpp>
|
|
#include <boost/asio/basic_signal_set.hpp>
|
|
#include <boost/asio/basic_socket.hpp>
|
|
#include <boost/asio/basic_socket_acceptor.hpp>
|
|
#include <boost/asio/basic_socket_iostream.hpp>
|
|
#include <boost/asio/basic_socket_streambuf.hpp>
|
|
#include <boost/asio/basic_stream_file.hpp>
|
|
#include <boost/asio/basic_stream_socket.hpp>
|
|
#include <boost/asio/basic_streambuf.hpp>
|
|
#include <boost/asio/basic_waitable_timer.hpp>
|
|
#include <boost/asio/basic_writable_pipe.hpp>
|
|
#include <boost/asio/bind_allocator.hpp>
|
|
#include <boost/asio/bind_cancellation_slot.hpp>
|
|
#include <boost/asio/bind_executor.hpp>
|
|
#include <boost/asio/bind_immediate_executor.hpp>
|
|
#include <boost/asio/buffer.hpp>
|
|
#include <boost/asio/buffer_registration.hpp>
|
|
#include <boost/asio/buffered_read_stream_fwd.hpp>
|
|
#include <boost/asio/buffered_read_stream.hpp>
|
|
#include <boost/asio/buffered_stream_fwd.hpp>
|
|
#include <boost/asio/buffered_stream.hpp>
|
|
#include <boost/asio/buffered_write_stream_fwd.hpp>
|
|
#include <boost/asio/buffered_write_stream.hpp>
|
|
#include <boost/asio/buffers_iterator.hpp>
|
|
#include <boost/asio/cancel_after.hpp>
|
|
#include <boost/asio/cancel_at.hpp>
|
|
#include <boost/asio/cancellation_signal.hpp>
|
|
#include <boost/asio/cancellation_state.hpp>
|
|
#include <boost/asio/cancellation_type.hpp>
|
|
#include <boost/asio/co_composed.hpp>
|
|
#include <boost/asio/co_spawn.hpp>
|
|
#include <boost/asio/completion_condition.hpp>
|
|
#include <boost/asio/compose.hpp>
|
|
#include <boost/asio/composed.hpp>
|
|
#include <boost/asio/config.hpp>
|
|
#include <boost/asio/connect.hpp>
|
|
#include <boost/asio/connect_pipe.hpp>
|
|
#include <boost/asio/consign.hpp>
|
|
#include <boost/asio/coroutine.hpp>
|
|
#include <boost/asio/deadline_timer.hpp>
|
|
#include <boost/asio/defer.hpp>
|
|
#include <boost/asio/deferred.hpp>
|
|
#include <boost/asio/default_completion_token.hpp>
|
|
#include <boost/asio/detached.hpp>
|
|
#include <boost/asio/dispatch.hpp>
|
|
#include <boost/asio/disposition.hpp>
|
|
#include <boost/asio/error.hpp>
|
|
#include <boost/asio/execution.hpp>
|
|
#include <boost/asio/execution/allocator.hpp>
|
|
#include <boost/asio/execution/any_executor.hpp>
|
|
#include <boost/asio/execution/blocking.hpp>
|
|
#include <boost/asio/execution/blocking_adaptation.hpp>
|
|
#include <boost/asio/execution/context.hpp>
|
|
#include <boost/asio/execution/context_as.hpp>
|
|
#include <boost/asio/execution/executor.hpp>
|
|
#include <boost/asio/execution/invocable_archetype.hpp>
|
|
#include <boost/asio/execution/mapping.hpp>
|
|
#include <boost/asio/execution/occupancy.hpp>
|
|
#include <boost/asio/execution/outstanding_work.hpp>
|
|
#include <boost/asio/execution/prefer_only.hpp>
|
|
#include <boost/asio/execution/relationship.hpp>
|
|
#include <boost/asio/executor.hpp>
|
|
#include <boost/asio/executor_work_guard.hpp>
|
|
#include <boost/asio/file_base.hpp>
|
|
#include <boost/asio/generic/basic_endpoint.hpp>
|
|
#include <boost/asio/generic/datagram_protocol.hpp>
|
|
#include <boost/asio/generic/raw_protocol.hpp>
|
|
#include <boost/asio/generic/seq_packet_protocol.hpp>
|
|
#include <boost/asio/generic/stream_protocol.hpp>
|
|
#include <boost/asio/handler_continuation_hook.hpp>
|
|
#include <boost/asio/high_resolution_timer.hpp>
|
|
#include <boost/asio/immediate.hpp>
|
|
#include <boost/asio/io_context.hpp>
|
|
#include <boost/asio/io_context_strand.hpp>
|
|
#include <boost/asio/ip/address.hpp>
|
|
#include <boost/asio/ip/address_v4.hpp>
|
|
#include <boost/asio/ip/address_v4_iterator.hpp>
|
|
#include <boost/asio/ip/address_v4_range.hpp>
|
|
#include <boost/asio/ip/address_v6.hpp>
|
|
#include <boost/asio/ip/address_v6_iterator.hpp>
|
|
#include <boost/asio/ip/address_v6_range.hpp>
|
|
#include <boost/asio/ip/network_v4.hpp>
|
|
#include <boost/asio/ip/network_v6.hpp>
|
|
#include <boost/asio/ip/bad_address_cast.hpp>
|
|
#include <boost/asio/ip/basic_endpoint.hpp>
|
|
#include <boost/asio/ip/basic_resolver.hpp>
|
|
#include <boost/asio/ip/basic_resolver_entry.hpp>
|
|
#include <boost/asio/ip/basic_resolver_iterator.hpp>
|
|
#include <boost/asio/ip/basic_resolver_query.hpp>
|
|
#include <boost/asio/ip/host_name.hpp>
|
|
#include <boost/asio/ip/icmp.hpp>
|
|
#include <boost/asio/ip/multicast.hpp>
|
|
#include <boost/asio/ip/resolver_base.hpp>
|
|
#include <boost/asio/ip/resolver_query_base.hpp>
|
|
#include <boost/asio/ip/tcp.hpp>
|
|
#include <boost/asio/ip/udp.hpp>
|
|
#include <boost/asio/ip/unicast.hpp>
|
|
#include <boost/asio/ip/v6_only.hpp>
|
|
#include <boost/asio/is_applicable_property.hpp>
|
|
#include <boost/asio/is_contiguous_iterator.hpp>
|
|
#include <boost/asio/is_executor.hpp>
|
|
#include <boost/asio/is_read_buffered.hpp>
|
|
#include <boost/asio/is_write_buffered.hpp>
|
|
#include <boost/asio/local/basic_endpoint.hpp>
|
|
#include <boost/asio/local/connect_pair.hpp>
|
|
#include <boost/asio/local/datagram_protocol.hpp>
|
|
#include <boost/asio/local/seq_packet_protocol.hpp>
|
|
#include <boost/asio/local/stream_protocol.hpp>
|
|
#include <boost/asio/multiple_exceptions.hpp>
|
|
#include <boost/asio/packaged_task.hpp>
|
|
#include <boost/asio/placeholders.hpp>
|
|
#include <boost/asio/posix/basic_descriptor.hpp>
|
|
#include <boost/asio/posix/basic_stream_descriptor.hpp>
|
|
#include <boost/asio/posix/descriptor.hpp>
|
|
#include <boost/asio/posix/descriptor_base.hpp>
|
|
#include <boost/asio/posix/stream_descriptor.hpp>
|
|
#include <boost/asio/post.hpp>
|
|
#include <boost/asio/prefer.hpp>
|
|
#include <boost/asio/prepend.hpp>
|
|
#include <boost/asio/query.hpp>
|
|
#include <boost/asio/random_access_file.hpp>
|
|
#include <boost/asio/read.hpp>
|
|
#include <boost/asio/read_at.hpp>
|
|
#include <boost/asio/read_until.hpp>
|
|
#include <boost/asio/readable_pipe.hpp>
|
|
#include <boost/asio/recycling_allocator.hpp>
|
|
#include <boost/asio/redirect_error.hpp>
|
|
#include <boost/asio/registered_buffer.hpp>
|
|
#include <boost/asio/require.hpp>
|
|
#include <boost/asio/require_concept.hpp>
|
|
#include <boost/asio/serial_port.hpp>
|
|
#include <boost/asio/serial_port_base.hpp>
|
|
#include <boost/asio/signal_set.hpp>
|
|
#include <boost/asio/signal_set_base.hpp>
|
|
#include <boost/asio/socket_base.hpp>
|
|
#include <boost/asio/static_thread_pool.hpp>
|
|
#include <boost/asio/steady_timer.hpp>
|
|
#include <boost/asio/strand.hpp>
|
|
#include <boost/asio/stream_file.hpp>
|
|
#include <boost/asio/streambuf.hpp>
|
|
#include <boost/asio/system_context.hpp>
|
|
#include <boost/asio/system_executor.hpp>
|
|
#include <boost/asio/system_timer.hpp>
|
|
#include <boost/asio/this_coro.hpp>
|
|
#include <boost/asio/thread_pool.hpp>
|
|
#include <boost/asio/time_traits.hpp>
|
|
#include <boost/asio/use_awaitable.hpp>
|
|
#include <boost/asio/use_future.hpp>
|
|
#include <boost/asio/uses_executor.hpp>
|
|
#include <boost/asio/version.hpp>
|
|
#include <boost/asio/wait_traits.hpp>
|
|
#include <boost/asio/windows/basic_object_handle.hpp>
|
|
#include <boost/asio/windows/basic_overlapped_handle.hpp>
|
|
#include <boost/asio/windows/basic_random_access_handle.hpp>
|
|
#include <boost/asio/windows/basic_stream_handle.hpp>
|
|
#include <boost/asio/windows/object_handle.hpp>
|
|
#include <boost/asio/windows/overlapped_handle.hpp>
|
|
#include <boost/asio/windows/overlapped_ptr.hpp>
|
|
#include <boost/asio/windows/random_access_handle.hpp>
|
|
#include <boost/asio/windows/stream_handle.hpp>
|
|
#include <boost/asio/writable_pipe.hpp>
|
|
#include <boost/asio/write.hpp>
|
|
#include <boost/asio/write_at.hpp>
|
|
|
|
#endif // BOOST_ASIO_HPP
|