[DEV] add v1.76.0

This commit is contained in:
2021-10-05 21:37:46 +02:00
parent a97e9ae7d4
commit d0115b733d
45133 changed files with 4744437 additions and 1026325 deletions

View File

@@ -0,0 +1,788 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>ip::tcp::acceptor</title>
<link rel="stylesheet" href="../../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.79.1">
<link rel="home" href="../../../boost_asio.html" title="Boost.Asio">
<link rel="up" href="../ip__tcp.html" title="ip::tcp">
<link rel="prev" href="../ip__tcp.html" title="ip::tcp">
<link rel="next" href="endpoint.html" title="ip::tcp::endpoint">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../boost.png"></td>
<td align="center"><a href="../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="../ip__tcp.html"><img src="../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../ip__tcp.html"><img src="../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../boost_asio.html"><img src="../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="endpoint.html"><img src="../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="section">
<div class="titlepage"><div><div><h4 class="title">
<a name="boost_asio.reference.ip__tcp.acceptor"></a><a class="link" href="acceptor.html" title="ip::tcp::acceptor">ip::tcp::acceptor</a>
</h4></div></div></div>
<p>
<a class="indexterm" name="boost_asio.indexterm.ip__tcp.acceptor"></a>
The TCP acceptor type.
</p>
<pre class="programlisting">typedef basic_socket_acceptor&lt; tcp &gt; acceptor;
</pre>
<h6>
<a name="boost_asio.reference.ip__tcp.acceptor.h0"></a>
<span class="phrase"><a name="boost_asio.reference.ip__tcp.acceptor.types"></a></span><a class="link" href="acceptor.html#boost_asio.reference.ip__tcp.acceptor.types">Types</a>
</h6>
<div class="informaltable"><table class="table">
<colgroup>
<col>
<col>
</colgroup>
<thead><tr>
<th>
<p>
Name
</p>
</th>
<th>
<p>
Description
</p>
</th>
</tr></thead>
<tbody>
<tr>
<td>
<p>
<a class="link" href="../basic_socket_acceptor__rebind_executor.html" title="basic_socket_acceptor::rebind_executor"><span class="bold"><strong>rebind_executor</strong></span></a>
</p>
</td>
<td>
<p>
Rebinds the acceptor type to another executor.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../basic_socket_acceptor/broadcast.html" title="basic_socket_acceptor::broadcast"><span class="bold"><strong>broadcast</strong></span></a>
</p>
</td>
<td>
<p>
Socket option to permit sending of broadcast messages.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../basic_socket_acceptor/bytes_readable.html" title="basic_socket_acceptor::bytes_readable"><span class="bold"><strong>bytes_readable</strong></span></a>
</p>
</td>
<td>
<p>
IO control command to get the amount of data that can be read
without blocking.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../basic_socket_acceptor/debug.html" title="basic_socket_acceptor::debug"><span class="bold"><strong>debug</strong></span></a>
</p>
</td>
<td>
<p>
Socket option to enable socket-level debugging.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../basic_socket_acceptor/do_not_route.html" title="basic_socket_acceptor::do_not_route"><span class="bold"><strong>do_not_route</strong></span></a>
</p>
</td>
<td>
<p>
Socket option to prevent routing, use local interfaces only.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../basic_socket_acceptor/enable_connection_aborted.html" title="basic_socket_acceptor::enable_connection_aborted"><span class="bold"><strong>enable_connection_aborted</strong></span></a>
</p>
</td>
<td>
<p>
Socket option to report aborted connections on accept.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../basic_socket_acceptor/endpoint_type.html" title="basic_socket_acceptor::endpoint_type"><span class="bold"><strong>endpoint_type</strong></span></a>
</p>
</td>
<td>
<p>
The endpoint type.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../basic_socket_acceptor/executor_type.html" title="basic_socket_acceptor::executor_type"><span class="bold"><strong>executor_type</strong></span></a>
</p>
</td>
<td>
<p>
The type of the executor associated with the object.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../basic_socket_acceptor/keep_alive.html" title="basic_socket_acceptor::keep_alive"><span class="bold"><strong>keep_alive</strong></span></a>
</p>
</td>
<td>
<p>
Socket option to send keep-alives.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../basic_socket_acceptor/linger.html" title="basic_socket_acceptor::linger"><span class="bold"><strong>linger</strong></span></a>
</p>
</td>
<td>
<p>
Socket option to specify whether the socket lingers on close
if unsent data is present.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../basic_socket_acceptor/message_flags.html" title="basic_socket_acceptor::message_flags"><span class="bold"><strong>message_flags</strong></span></a>
</p>
</td>
<td>
<p>
Bitmask type for flags that can be passed to send and receive
operations.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../basic_socket_acceptor/native_handle_type.html" title="basic_socket_acceptor::native_handle_type"><span class="bold"><strong>native_handle_type</strong></span></a>
</p>
</td>
<td>
<p>
The native representation of an acceptor.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../basic_socket_acceptor/out_of_band_inline.html" title="basic_socket_acceptor::out_of_band_inline"><span class="bold"><strong>out_of_band_inline</strong></span></a>
</p>
</td>
<td>
<p>
Socket option for putting received out-of-band data inline.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../basic_socket_acceptor/protocol_type.html" title="basic_socket_acceptor::protocol_type"><span class="bold"><strong>protocol_type</strong></span></a>
</p>
</td>
<td>
<p>
The protocol type.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../basic_socket_acceptor/receive_buffer_size.html" title="basic_socket_acceptor::receive_buffer_size"><span class="bold"><strong>receive_buffer_size</strong></span></a>
</p>
</td>
<td>
<p>
Socket option for the receive buffer size of a socket.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../basic_socket_acceptor/receive_low_watermark.html" title="basic_socket_acceptor::receive_low_watermark"><span class="bold"><strong>receive_low_watermark</strong></span></a>
</p>
</td>
<td>
<p>
Socket option for the receive low watermark.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../basic_socket_acceptor/reuse_address.html" title="basic_socket_acceptor::reuse_address"><span class="bold"><strong>reuse_address</strong></span></a>
</p>
</td>
<td>
<p>
Socket option to allow the socket to be bound to an address that
is already in use.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../basic_socket_acceptor/send_buffer_size.html" title="basic_socket_acceptor::send_buffer_size"><span class="bold"><strong>send_buffer_size</strong></span></a>
</p>
</td>
<td>
<p>
Socket option for the send buffer size of a socket.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../basic_socket_acceptor/send_low_watermark.html" title="basic_socket_acceptor::send_low_watermark"><span class="bold"><strong>send_low_watermark</strong></span></a>
</p>
</td>
<td>
<p>
Socket option for the send low watermark.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../basic_socket_acceptor/shutdown_type.html" title="basic_socket_acceptor::shutdown_type"><span class="bold"><strong>shutdown_type</strong></span></a>
</p>
</td>
<td>
<p>
Different ways a socket may be shutdown.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../basic_socket_acceptor/wait_type.html" title="basic_socket_acceptor::wait_type"><span class="bold"><strong>wait_type</strong></span></a>
</p>
</td>
<td>
<p>
Wait types.
</p>
</td>
</tr>
</tbody>
</table></div>
<h6>
<a name="boost_asio.reference.ip__tcp.acceptor.h1"></a>
<span class="phrase"><a name="boost_asio.reference.ip__tcp.acceptor.member_functions"></a></span><a class="link" href="acceptor.html#boost_asio.reference.ip__tcp.acceptor.member_functions">Member
Functions</a>
</h6>
<div class="informaltable"><table class="table">
<colgroup>
<col>
<col>
</colgroup>
<thead><tr>
<th>
<p>
Name
</p>
</th>
<th>
<p>
Description
</p>
</th>
</tr></thead>
<tbody>
<tr>
<td>
<p>
<a class="link" href="../basic_socket_acceptor/accept.html" title="basic_socket_acceptor::accept"><span class="bold"><strong>accept</strong></span></a>
</p>
</td>
<td>
<p>
Accept a new connection. <br> <span class="silver"></span><br> Accept a new connection
and obtain the endpoint of the peer.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../basic_socket_acceptor/assign.html" title="basic_socket_acceptor::assign"><span class="bold"><strong>assign</strong></span></a>
</p>
</td>
<td>
<p>
Assigns an existing native acceptor to the acceptor.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../basic_socket_acceptor/async_accept.html" title="basic_socket_acceptor::async_accept"><span class="bold"><strong>async_accept</strong></span></a>
</p>
</td>
<td>
<p>
Start an asynchronous accept.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../basic_socket_acceptor/async_wait.html" title="basic_socket_acceptor::async_wait"><span class="bold"><strong>async_wait</strong></span></a>
</p>
</td>
<td>
<p>
Asynchronously wait for the acceptor to become ready to read,
ready to write, or to have pending error conditions.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../basic_socket_acceptor/basic_socket_acceptor.html" title="basic_socket_acceptor::basic_socket_acceptor"><span class="bold"><strong>basic_socket_acceptor</strong></span></a> <span class="silver">[constructor]</span>
</p>
</td>
<td>
<p>
Construct an acceptor without opening it. <br> <span class="silver"></span><br> Construct
an open acceptor. <br> <span class="silver"></span><br> Construct an acceptor opened
on the given endpoint. <br> <span class="silver"></span><br> Construct a basic_socket_acceptor
on an existing native acceptor. <br> <span class="silver"></span><br> Move-construct
a basic_socket_acceptor from another. <br> <span class="silver"></span><br> Move-construct
a basic_socket_acceptor from an acceptor of another protocol
type.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../basic_socket_acceptor/bind.html" title="basic_socket_acceptor::bind"><span class="bold"><strong>bind</strong></span></a>
</p>
</td>
<td>
<p>
Bind the acceptor to the given local endpoint.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../basic_socket_acceptor/cancel.html" title="basic_socket_acceptor::cancel"><span class="bold"><strong>cancel</strong></span></a>
</p>
</td>
<td>
<p>
Cancel all asynchronous operations associated with the acceptor.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../basic_socket_acceptor/close.html" title="basic_socket_acceptor::close"><span class="bold"><strong>close</strong></span></a>
</p>
</td>
<td>
<p>
Close the acceptor.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../basic_socket_acceptor/get_executor.html" title="basic_socket_acceptor::get_executor"><span class="bold"><strong>get_executor</strong></span></a>
</p>
</td>
<td>
<p>
Get the executor associated with the object.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../basic_socket_acceptor/get_option.html" title="basic_socket_acceptor::get_option"><span class="bold"><strong>get_option</strong></span></a>
</p>
</td>
<td>
<p>
Get an option from the acceptor.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../basic_socket_acceptor/io_control.html" title="basic_socket_acceptor::io_control"><span class="bold"><strong>io_control</strong></span></a>
</p>
</td>
<td>
<p>
Perform an IO control command on the acceptor.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../basic_socket_acceptor/is_open.html" title="basic_socket_acceptor::is_open"><span class="bold"><strong>is_open</strong></span></a>
</p>
</td>
<td>
<p>
Determine whether the acceptor is open.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../basic_socket_acceptor/listen.html" title="basic_socket_acceptor::listen"><span class="bold"><strong>listen</strong></span></a>
</p>
</td>
<td>
<p>
Place the acceptor into the state where it will listen for new
connections.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../basic_socket_acceptor/local_endpoint.html" title="basic_socket_acceptor::local_endpoint"><span class="bold"><strong>local_endpoint</strong></span></a>
</p>
</td>
<td>
<p>
Get the local endpoint of the acceptor.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../basic_socket_acceptor/native_handle.html" title="basic_socket_acceptor::native_handle"><span class="bold"><strong>native_handle</strong></span></a>
</p>
</td>
<td>
<p>
Get the native acceptor representation.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../basic_socket_acceptor/native_non_blocking.html" title="basic_socket_acceptor::native_non_blocking"><span class="bold"><strong>native_non_blocking</strong></span></a>
</p>
</td>
<td>
<p>
Gets the non-blocking mode of the native acceptor implementation.
<br> <span class="silver"></span><br> Sets the non-blocking mode of the native acceptor
implementation.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../basic_socket_acceptor/non_blocking.html" title="basic_socket_acceptor::non_blocking"><span class="bold"><strong>non_blocking</strong></span></a>
</p>
</td>
<td>
<p>
Gets the non-blocking mode of the acceptor. <br> <span class="silver"></span><br> Sets
the non-blocking mode of the acceptor.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../basic_socket_acceptor/open.html" title="basic_socket_acceptor::open"><span class="bold"><strong>open</strong></span></a>
</p>
</td>
<td>
<p>
Open the acceptor using the specified protocol.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../basic_socket_acceptor/operator_eq_.html" title="basic_socket_acceptor::operator="><span class="bold"><strong>operator=</strong></span></a>
</p>
</td>
<td>
<p>
Move-assign a basic_socket_acceptor from another. <br> <span class="silver"></span><br>
Move-assign a basic_socket_acceptor from an acceptor of another
protocol type.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../basic_socket_acceptor/release.html" title="basic_socket_acceptor::release"><span class="bold"><strong>release</strong></span></a>
</p>
</td>
<td>
<p>
Release ownership of the underlying native acceptor.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../basic_socket_acceptor/set_option.html" title="basic_socket_acceptor::set_option"><span class="bold"><strong>set_option</strong></span></a>
</p>
</td>
<td>
<p>
Set an option on the acceptor.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../basic_socket_acceptor/wait.html" title="basic_socket_acceptor::wait"><span class="bold"><strong>wait</strong></span></a>
</p>
</td>
<td>
<p>
Wait for the acceptor to become ready to read, ready to write,
or to have pending error conditions.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../basic_socket_acceptor/_basic_socket_acceptor.html" title="basic_socket_acceptor::~basic_socket_acceptor"><span class="bold"><strong>~basic_socket_acceptor</strong></span></a> <span class="silver">[destructor]</span>
</p>
</td>
<td>
<p>
Destroys the acceptor.
</p>
</td>
</tr>
</tbody>
</table></div>
<h6>
<a name="boost_asio.reference.ip__tcp.acceptor.h2"></a>
<span class="phrase"><a name="boost_asio.reference.ip__tcp.acceptor.data_members"></a></span><a class="link" href="acceptor.html#boost_asio.reference.ip__tcp.acceptor.data_members">Data Members</a>
</h6>
<div class="informaltable"><table class="table">
<colgroup>
<col>
<col>
</colgroup>
<thead><tr>
<th>
<p>
Name
</p>
</th>
<th>
<p>
Description
</p>
</th>
</tr></thead>
<tbody>
<tr>
<td>
<p>
<a class="link" href="../basic_socket_acceptor/max_connections.html" title="basic_socket_acceptor::max_connections"><span class="bold"><strong>max_connections</strong></span></a> <span class="silver">[static]</span>
</p>
</td>
<td>
<p>
(Deprecated: Use max_listen_connections.) The maximum length
of the queue of pending incoming connections.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../basic_socket_acceptor/max_listen_connections.html" title="basic_socket_acceptor::max_listen_connections"><span class="bold"><strong>max_listen_connections</strong></span></a> <span class="silver">[static]</span>
</p>
</td>
<td>
<p>
The maximum length of the queue of pending incoming connections.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../basic_socket_acceptor/message_do_not_route.html" title="basic_socket_acceptor::message_do_not_route"><span class="bold"><strong>message_do_not_route</strong></span></a> <span class="silver">[static]</span>
</p>
</td>
<td>
<p>
Specify that the data should not be subject to routing.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../basic_socket_acceptor/message_end_of_record.html" title="basic_socket_acceptor::message_end_of_record"><span class="bold"><strong>message_end_of_record</strong></span></a> <span class="silver">[static]</span>
</p>
</td>
<td>
<p>
Specifies that the data marks the end of a record.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../basic_socket_acceptor/message_out_of_band.html" title="basic_socket_acceptor::message_out_of_band"><span class="bold"><strong>message_out_of_band</strong></span></a> <span class="silver">[static]</span>
</p>
</td>
<td>
<p>
Process out-of-band data.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../basic_socket_acceptor/message_peek.html" title="basic_socket_acceptor::message_peek"><span class="bold"><strong>message_peek</strong></span></a> <span class="silver">[static]</span>
</p>
</td>
<td>
<p>
Peek at incoming data without removing it from the input queue.
</p>
</td>
</tr>
</tbody>
</table></div>
<p>
The <a class="link" href="../basic_socket_acceptor.html" title="basic_socket_acceptor"><code class="computeroutput">basic_socket_acceptor</code></a>
class template is used for accepting new socket connections.
</p>
<h6>
<a name="boost_asio.reference.ip__tcp.acceptor.h3"></a>
<span class="phrase"><a name="boost_asio.reference.ip__tcp.acceptor.thread_safety"></a></span><a class="link" href="acceptor.html#boost_asio.reference.ip__tcp.acceptor.thread_safety">Thread Safety</a>
</h6>
<p>
<span class="emphasis"><em>Distinct</em></span> <span class="emphasis"><em>objects:</em></span> Safe.
</p>
<p>
<span class="emphasis"><em>Shared</em></span> <span class="emphasis"><em>objects:</em></span> Unsafe.
</p>
<p>
Synchronous <code class="computeroutput">accept</code> operations are thread safe, if the underlying
operating system calls are also thread safe. This means that it is permitted
to perform concurrent calls to synchronous <code class="computeroutput">accept</code> operations
on a single socket object. Other synchronous operations, such as <code class="computeroutput">open</code>
or <code class="computeroutput">close</code>, are not thread safe.
</p>
<h6>
<a name="boost_asio.reference.ip__tcp.acceptor.h4"></a>
<span class="phrase"><a name="boost_asio.reference.ip__tcp.acceptor.example"></a></span><a class="link" href="acceptor.html#boost_asio.reference.ip__tcp.acceptor.example">Example</a>
</h6>
<p>
Opening a socket acceptor with the SO_REUSEADDR option enabled:
</p>
<pre class="programlisting">boost::asio::ip::tcp::acceptor acceptor(my_context);
boost::asio::ip::tcp::endpoint endpoint(boost::asio::ip::tcp::v4(), port);
acceptor.open(endpoint.protocol());
acceptor.set_option(boost::asio::ip::tcp::acceptor::reuse_address(true));
acceptor.bind(endpoint);
acceptor.listen();
</pre>
<h6>
<a name="boost_asio.reference.ip__tcp.acceptor.h5"></a>
<span class="phrase"><a name="boost_asio.reference.ip__tcp.acceptor.requirements"></a></span><a class="link" href="acceptor.html#boost_asio.reference.ip__tcp.acceptor.requirements">Requirements</a>
</h6>
<p>
<span class="emphasis"><em>Header: </em></span><code class="literal">boost/asio/ip/tcp.hpp</code>
</p>
<p>
<span class="emphasis"><em>Convenience header: </em></span><code class="literal">boost/asio.hpp</code>
</p>
</div>
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
<td align="left"></td>
<td align="right"><div class="copyright-footer">Copyright © 2003-2021 Christopher
M. Kohlhoff<p>
Distributed under the Boost Software License, Version 1.0. (See accompanying
file LICENSE_1_0.txt or copy at <a href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)
</p>
</div></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="../ip__tcp.html"><img src="../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../ip__tcp.html"><img src="../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../boost_asio.html"><img src="../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="endpoint.html"><img src="../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@@ -0,0 +1,401 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>ip::tcp::endpoint</title>
<link rel="stylesheet" href="../../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.79.1">
<link rel="home" href="../../../boost_asio.html" title="Boost.Asio">
<link rel="up" href="../ip__tcp.html" title="ip::tcp">
<link rel="prev" href="acceptor.html" title="ip::tcp::acceptor">
<link rel="next" href="family.html" title="ip::tcp::family">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../boost.png"></td>
<td align="center"><a href="../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="acceptor.html"><img src="../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../ip__tcp.html"><img src="../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../boost_asio.html"><img src="../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="family.html"><img src="../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="section">
<div class="titlepage"><div><div><h4 class="title">
<a name="boost_asio.reference.ip__tcp.endpoint"></a><a class="link" href="endpoint.html" title="ip::tcp::endpoint">ip::tcp::endpoint</a>
</h4></div></div></div>
<p>
<a class="indexterm" name="boost_asio.indexterm.ip__tcp.endpoint"></a>
The type of a TCP endpoint.
</p>
<pre class="programlisting">typedef basic_endpoint&lt; tcp &gt; endpoint;
</pre>
<h6>
<a name="boost_asio.reference.ip__tcp.endpoint.h0"></a>
<span class="phrase"><a name="boost_asio.reference.ip__tcp.endpoint.types"></a></span><a class="link" href="endpoint.html#boost_asio.reference.ip__tcp.endpoint.types">Types</a>
</h6>
<div class="informaltable"><table class="table">
<colgroup>
<col>
<col>
</colgroup>
<thead><tr>
<th>
<p>
Name
</p>
</th>
<th>
<p>
Description
</p>
</th>
</tr></thead>
<tbody>
<tr>
<td>
<p>
<a class="link" href="../ip__basic_endpoint/data_type.html" title="ip::basic_endpoint::data_type"><span class="bold"><strong>data_type</strong></span></a>
</p>
</td>
<td>
<p>
The type of the endpoint structure. This type is dependent on
the underlying implementation of the socket layer.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../ip__basic_endpoint/protocol_type.html" title="ip::basic_endpoint::protocol_type"><span class="bold"><strong>protocol_type</strong></span></a>
</p>
</td>
<td>
<p>
The protocol type associated with the endpoint.
</p>
</td>
</tr>
</tbody>
</table></div>
<h6>
<a name="boost_asio.reference.ip__tcp.endpoint.h1"></a>
<span class="phrase"><a name="boost_asio.reference.ip__tcp.endpoint.member_functions"></a></span><a class="link" href="endpoint.html#boost_asio.reference.ip__tcp.endpoint.member_functions">Member
Functions</a>
</h6>
<div class="informaltable"><table class="table">
<colgroup>
<col>
<col>
</colgroup>
<thead><tr>
<th>
<p>
Name
</p>
</th>
<th>
<p>
Description
</p>
</th>
</tr></thead>
<tbody>
<tr>
<td>
<p>
<a class="link" href="../ip__basic_endpoint/address.html" title="ip::basic_endpoint::address"><span class="bold"><strong>address</strong></span></a>
</p>
</td>
<td>
<p>
Get the IP address associated with the endpoint. <br> <span class="silver"></span><br>
Set the IP address associated with the endpoint.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../ip__basic_endpoint/basic_endpoint.html" title="ip::basic_endpoint::basic_endpoint"><span class="bold"><strong>basic_endpoint</strong></span></a> <span class="silver">[constructor]</span>
</p>
</td>
<td>
<p>
Default constructor. <br> <span class="silver"></span><br> Construct an endpoint using
a port number, specified in the host's byte order. The IP address
will be the any address (i.e. INADDR_ANY or in6addr_any). This
constructor would typically be used for accepting new connections.
<br> <span class="silver"></span><br> Construct an endpoint using a port number and an
IP address. This constructor may be used for accepting connections
on a specific interface or for making a connection to a remote
endpoint. <br> <span class="silver"></span><br> Copy constructor. <br> <span class="silver"></span><br> Move
constructor.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../ip__basic_endpoint/capacity.html" title="ip::basic_endpoint::capacity"><span class="bold"><strong>capacity</strong></span></a>
</p>
</td>
<td>
<p>
Get the capacity of the endpoint in the native type.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../ip__basic_endpoint/data.html" title="ip::basic_endpoint::data"><span class="bold"><strong>data</strong></span></a>
</p>
</td>
<td>
<p>
Get the underlying endpoint in the native type.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../ip__basic_endpoint/operator_eq_.html" title="ip::basic_endpoint::operator="><span class="bold"><strong>operator=</strong></span></a>
</p>
</td>
<td>
<p>
Assign from another endpoint. <br> <span class="silver"></span><br> Move-assign from
another endpoint.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../ip__basic_endpoint/port.html" title="ip::basic_endpoint::port"><span class="bold"><strong>port</strong></span></a>
</p>
</td>
<td>
<p>
Get the port associated with the endpoint. The port number is
always in the host's byte order. <br> <span class="silver"></span><br> Set the port associated
with the endpoint. The port number is always in the host's byte
order.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../ip__basic_endpoint/protocol.html" title="ip::basic_endpoint::protocol"><span class="bold"><strong>protocol</strong></span></a>
</p>
</td>
<td>
<p>
The protocol associated with the endpoint.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../ip__basic_endpoint/resize.html" title="ip::basic_endpoint::resize"><span class="bold"><strong>resize</strong></span></a>
</p>
</td>
<td>
<p>
Set the underlying size of the endpoint in the native type.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../ip__basic_endpoint/size.html" title="ip::basic_endpoint::size"><span class="bold"><strong>size</strong></span></a>
</p>
</td>
<td>
<p>
Get the underlying size of the endpoint in the native type.
</p>
</td>
</tr>
</tbody>
</table></div>
<h6>
<a name="boost_asio.reference.ip__tcp.endpoint.h2"></a>
<span class="phrase"><a name="boost_asio.reference.ip__tcp.endpoint.friends"></a></span><a class="link" href="endpoint.html#boost_asio.reference.ip__tcp.endpoint.friends">Friends</a>
</h6>
<div class="informaltable"><table class="table">
<colgroup>
<col>
<col>
</colgroup>
<thead><tr>
<th>
<p>
Name
</p>
</th>
<th>
<p>
Description
</p>
</th>
</tr></thead>
<tbody>
<tr>
<td>
<p>
<a class="link" href="../ip__basic_endpoint/operator_not__eq_.html" title="ip::basic_endpoint::operator!="><span class="bold"><strong>operator!=</strong></span></a>
</p>
</td>
<td>
<p>
Compare two endpoints for inequality.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../ip__basic_endpoint/operator_lt_.html" title="ip::basic_endpoint::operator&lt;"><span class="bold"><strong>operator&lt;</strong></span></a>
</p>
</td>
<td>
<p>
Compare endpoints for ordering.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../ip__basic_endpoint/operator_lt__eq_.html" title="ip::basic_endpoint::operator&lt;="><span class="bold"><strong>operator&lt;=</strong></span></a>
</p>
</td>
<td>
<p>
Compare endpoints for ordering.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../ip__basic_endpoint/operator_eq__eq_.html" title="ip::basic_endpoint::operator=="><span class="bold"><strong>operator==</strong></span></a>
</p>
</td>
<td>
<p>
Compare two endpoints for equality.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../ip__basic_endpoint/operator_gt_.html" title="ip::basic_endpoint::operator&gt;"><span class="bold"><strong>operator&gt;</strong></span></a>
</p>
</td>
<td>
<p>
Compare endpoints for ordering.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../ip__basic_endpoint/operator_gt__eq_.html" title="ip::basic_endpoint::operator&gt;="><span class="bold"><strong>operator&gt;=</strong></span></a>
</p>
</td>
<td>
<p>
Compare endpoints for ordering.
</p>
</td>
</tr>
</tbody>
</table></div>
<h6>
<a name="boost_asio.reference.ip__tcp.endpoint.h3"></a>
<span class="phrase"><a name="boost_asio.reference.ip__tcp.endpoint.related_functions"></a></span><a class="link" href="endpoint.html#boost_asio.reference.ip__tcp.endpoint.related_functions">Related
Functions</a>
</h6>
<div class="informaltable"><table class="table">
<colgroup>
<col>
<col>
</colgroup>
<thead><tr>
<th>
<p>
Name
</p>
</th>
<th>
<p>
Description
</p>
</th>
</tr></thead>
<tbody><tr>
<td>
<p>
<a class="link" href="../ip__basic_endpoint/operator_lt__lt_.html" title="ip::basic_endpoint::operator&lt;&lt;"><span class="bold"><strong>operator&lt;&lt;</strong></span></a>
</p>
</td>
<td>
<p>
Output an endpoint as a string.
</p>
</td>
</tr></tbody>
</table></div>
<p>
The <a class="link" href="../ip__basic_endpoint.html" title="ip::basic_endpoint"><code class="computeroutput">ip::basic_endpoint</code></a>
class template describes an endpoint that may be associated with a particular
socket.
</p>
<h6>
<a name="boost_asio.reference.ip__tcp.endpoint.h4"></a>
<span class="phrase"><a name="boost_asio.reference.ip__tcp.endpoint.thread_safety"></a></span><a class="link" href="endpoint.html#boost_asio.reference.ip__tcp.endpoint.thread_safety">Thread Safety</a>
</h6>
<p>
<span class="emphasis"><em>Distinct</em></span> <span class="emphasis"><em>objects:</em></span> Safe.
</p>
<p>
<span class="emphasis"><em>Shared</em></span> <span class="emphasis"><em>objects:</em></span> Unsafe.
</p>
<h6>
<a name="boost_asio.reference.ip__tcp.endpoint.h5"></a>
<span class="phrase"><a name="boost_asio.reference.ip__tcp.endpoint.requirements"></a></span><a class="link" href="endpoint.html#boost_asio.reference.ip__tcp.endpoint.requirements">Requirements</a>
</h6>
<p>
<span class="emphasis"><em>Header: </em></span><code class="literal">boost/asio/ip/tcp.hpp</code>
</p>
<p>
<span class="emphasis"><em>Convenience header: </em></span><code class="literal">boost/asio.hpp</code>
</p>
</div>
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
<td align="left"></td>
<td align="right"><div class="copyright-footer">Copyright © 2003-2021 Christopher
M. Kohlhoff<p>
Distributed under the Boost Software License, Version 1.0. (See accompanying
file LICENSE_1_0.txt or copy at <a href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)
</p>
</div></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="acceptor.html"><img src="../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../ip__tcp.html"><img src="../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../boost_asio.html"><img src="../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="family.html"><img src="../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@@ -0,0 +1,51 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>ip::tcp::family</title>
<link rel="stylesheet" href="../../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.79.1">
<link rel="home" href="../../../boost_asio.html" title="Boost.Asio">
<link rel="up" href="../ip__tcp.html" title="ip::tcp">
<link rel="prev" href="endpoint.html" title="ip::tcp::endpoint">
<link rel="next" href="iostream.html" title="ip::tcp::iostream">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../boost.png"></td>
<td align="center"><a href="../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="endpoint.html"><img src="../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../ip__tcp.html"><img src="../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../boost_asio.html"><img src="../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="iostream.html"><img src="../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="section">
<div class="titlepage"><div><div><h4 class="title">
<a name="boost_asio.reference.ip__tcp.family"></a><a class="link" href="family.html" title="ip::tcp::family">ip::tcp::family</a>
</h4></div></div></div>
<p>
<a class="indexterm" name="boost_asio.indexterm.ip__tcp.family"></a>
Obtain an identifier for
the protocol family.
</p>
<pre class="programlisting">int family() const;
</pre>
</div>
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
<td align="left"></td>
<td align="right"><div class="copyright-footer">Copyright © 2003-2021 Christopher
M. Kohlhoff<p>
Distributed under the Boost Software License, Version 1.0. (See accompanying
file LICENSE_1_0.txt or copy at <a href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)
</p>
</div></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="endpoint.html"><img src="../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../ip__tcp.html"><img src="../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../boost_asio.html"><img src="../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="iostream.html"><img src="../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@@ -0,0 +1,334 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>ip::tcp::iostream</title>
<link rel="stylesheet" href="../../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.79.1">
<link rel="home" href="../../../boost_asio.html" title="Boost.Asio">
<link rel="up" href="../ip__tcp.html" title="ip::tcp">
<link rel="prev" href="family.html" title="ip::tcp::family">
<link rel="next" href="no_delay.html" title="ip::tcp::no_delay">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../boost.png"></td>
<td align="center"><a href="../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="family.html"><img src="../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../ip__tcp.html"><img src="../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../boost_asio.html"><img src="../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="no_delay.html"><img src="../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="section">
<div class="titlepage"><div><div><h4 class="title">
<a name="boost_asio.reference.ip__tcp.iostream"></a><a class="link" href="iostream.html" title="ip::tcp::iostream">ip::tcp::iostream</a>
</h4></div></div></div>
<p>
<a class="indexterm" name="boost_asio.indexterm.ip__tcp.iostream"></a>
The TCP iostream type.
</p>
<pre class="programlisting">typedef basic_socket_iostream&lt; tcp &gt; iostream;
</pre>
<h6>
<a name="boost_asio.reference.ip__tcp.iostream.h0"></a>
<span class="phrase"><a name="boost_asio.reference.ip__tcp.iostream.types"></a></span><a class="link" href="iostream.html#boost_asio.reference.ip__tcp.iostream.types">Types</a>
</h6>
<div class="informaltable"><table class="table">
<colgroup>
<col>
<col>
</colgroup>
<thead><tr>
<th>
<p>
Name
</p>
</th>
<th>
<p>
Description
</p>
</th>
</tr></thead>
<tbody>
<tr>
<td>
<p>
<a class="link" href="../basic_socket_iostream/clock_type.html" title="basic_socket_iostream::clock_type"><span class="bold"><strong>clock_type</strong></span></a>
</p>
</td>
<td>
<p>
The clock type.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../basic_socket_iostream/duration.html" title="basic_socket_iostream::duration"><span class="bold"><strong>duration</strong></span></a>
</p>
</td>
<td>
<p>
The duration type.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../basic_socket_iostream/duration_type.html" title="basic_socket_iostream::duration_type"><span class="bold"><strong>duration_type</strong></span></a>
</p>
</td>
<td>
<p>
(Deprecated: Use duration.) The duration type.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../basic_socket_iostream/endpoint_type.html" title="basic_socket_iostream::endpoint_type"><span class="bold"><strong>endpoint_type</strong></span></a>
</p>
</td>
<td>
<p>
The endpoint type.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../basic_socket_iostream/protocol_type.html" title="basic_socket_iostream::protocol_type"><span class="bold"><strong>protocol_type</strong></span></a>
</p>
</td>
<td>
<p>
The protocol type.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../basic_socket_iostream/time_point.html" title="basic_socket_iostream::time_point"><span class="bold"><strong>time_point</strong></span></a>
</p>
</td>
<td>
<p>
The time type.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../basic_socket_iostream/time_type.html" title="basic_socket_iostream::time_type"><span class="bold"><strong>time_type</strong></span></a>
</p>
</td>
<td>
<p>
(Deprecated: Use time_point.) The time type.
</p>
</td>
</tr>
</tbody>
</table></div>
<h6>
<a name="boost_asio.reference.ip__tcp.iostream.h1"></a>
<span class="phrase"><a name="boost_asio.reference.ip__tcp.iostream.member_functions"></a></span><a class="link" href="iostream.html#boost_asio.reference.ip__tcp.iostream.member_functions">Member
Functions</a>
</h6>
<div class="informaltable"><table class="table">
<colgroup>
<col>
<col>
</colgroup>
<thead><tr>
<th>
<p>
Name
</p>
</th>
<th>
<p>
Description
</p>
</th>
</tr></thead>
<tbody>
<tr>
<td>
<p>
<a class="link" href="../basic_socket_iostream/basic_socket_iostream.html" title="basic_socket_iostream::basic_socket_iostream"><span class="bold"><strong>basic_socket_iostream</strong></span></a> <span class="silver">[constructor]</span>
</p>
</td>
<td>
<p>
Construct a basic_socket_iostream without establishing a connection.
<br> <span class="silver"></span><br> Construct a basic_socket_iostream from the supplied
socket. <br> <span class="silver"></span><br> Move-construct a basic_socket_iostream
from another. <br> <span class="silver"></span><br> Establish a connection to an endpoint
corresponding to a resolver query.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../basic_socket_iostream/close.html" title="basic_socket_iostream::close"><span class="bold"><strong>close</strong></span></a>
</p>
</td>
<td>
<p>
Close the connection.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../basic_socket_iostream/connect.html" title="basic_socket_iostream::connect"><span class="bold"><strong>connect</strong></span></a>
</p>
</td>
<td>
<p>
Establish a connection to an endpoint corresponding to a resolver
query.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../basic_socket_iostream/error.html" title="basic_socket_iostream::error"><span class="bold"><strong>error</strong></span></a>
</p>
</td>
<td>
<p>
Get the last error associated with the stream.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../basic_socket_iostream/expires_after.html" title="basic_socket_iostream::expires_after"><span class="bold"><strong>expires_after</strong></span></a>
</p>
</td>
<td>
<p>
Set the stream's expiry time relative to now.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../basic_socket_iostream/expires_at.html" title="basic_socket_iostream::expires_at"><span class="bold"><strong>expires_at</strong></span></a>
</p>
</td>
<td>
<p>
(Deprecated: Use expiry().) Get the stream's expiry time as an
absolute time. <br> <span class="silver"></span><br> Set the stream's expiry time as
an absolute time.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../basic_socket_iostream/expires_from_now.html" title="basic_socket_iostream::expires_from_now"><span class="bold"><strong>expires_from_now</strong></span></a>
</p>
</td>
<td>
<p>
(Deprecated: Use expiry().) Get the stream's expiry time relative
to now. <br> <span class="silver"></span><br> (Deprecated: Use expires_after().) Set
the stream's expiry time relative to now.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../basic_socket_iostream/expiry.html" title="basic_socket_iostream::expiry"><span class="bold"><strong>expiry</strong></span></a>
</p>
</td>
<td>
<p>
Get the stream's expiry time as an absolute time.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../basic_socket_iostream/operator_eq_.html" title="basic_socket_iostream::operator="><span class="bold"><strong>operator=</strong></span></a>
</p>
</td>
<td>
<p>
Move-assign a basic_socket_iostream from another.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../basic_socket_iostream/rdbuf.html" title="basic_socket_iostream::rdbuf"><span class="bold"><strong>rdbuf</strong></span></a>
</p>
</td>
<td>
<p>
Return a pointer to the underlying streambuf.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../basic_socket_iostream/socket.html" title="basic_socket_iostream::socket"><span class="bold"><strong>socket</strong></span></a>
</p>
</td>
<td>
<p>
Get a reference to the underlying socket.
</p>
</td>
</tr>
</tbody>
</table></div>
<h6>
<a name="boost_asio.reference.ip__tcp.iostream.h2"></a>
<span class="phrase"><a name="boost_asio.reference.ip__tcp.iostream.requirements"></a></span><a class="link" href="iostream.html#boost_asio.reference.ip__tcp.iostream.requirements">Requirements</a>
</h6>
<p>
<span class="emphasis"><em>Header: </em></span><code class="literal">boost/asio/ip/tcp.hpp</code>
</p>
<p>
<span class="emphasis"><em>Convenience header: </em></span><code class="literal">boost/asio.hpp</code>
</p>
</div>
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
<td align="left"></td>
<td align="right"><div class="copyright-footer">Copyright © 2003-2021 Christopher
M. Kohlhoff<p>
Distributed under the Boost Software License, Version 1.0. (See accompanying
file LICENSE_1_0.txt or copy at <a href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)
</p>
</div></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="family.html"><img src="../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../ip__tcp.html"><img src="../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../boost_asio.html"><img src="../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="no_delay.html"><img src="../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@@ -0,0 +1,85 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>ip::tcp::no_delay</title>
<link rel="stylesheet" href="../../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.79.1">
<link rel="home" href="../../../boost_asio.html" title="Boost.Asio">
<link rel="up" href="../ip__tcp.html" title="ip::tcp">
<link rel="prev" href="iostream.html" title="ip::tcp::iostream">
<link rel="next" href="operator_not__eq_.html" title="ip::tcp::operator!=">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../boost.png"></td>
<td align="center"><a href="../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="iostream.html"><img src="../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../ip__tcp.html"><img src="../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../boost_asio.html"><img src="../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="operator_not__eq_.html"><img src="../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="section">
<div class="titlepage"><div><div><h4 class="title">
<a name="boost_asio.reference.ip__tcp.no_delay"></a><a class="link" href="no_delay.html" title="ip::tcp::no_delay">ip::tcp::no_delay</a>
</h4></div></div></div>
<p>
<a class="indexterm" name="boost_asio.indexterm.ip__tcp.no_delay"></a>
Socket option for disabling
the Nagle algorithm.
</p>
<pre class="programlisting">typedef implementation_defined no_delay;
</pre>
<p>
Implements the IPPROTO_TCP/TCP_NODELAY socket option.
</p>
<h6>
<a name="boost_asio.reference.ip__tcp.no_delay.h0"></a>
<span class="phrase"><a name="boost_asio.reference.ip__tcp.no_delay.examples"></a></span><a class="link" href="no_delay.html#boost_asio.reference.ip__tcp.no_delay.examples">Examples</a>
</h6>
<p>
Setting the option:
</p>
<pre class="programlisting">boost::asio::ip::tcp::socket socket(my_context);
...
boost::asio::ip::tcp::no_delay option(true);
socket.set_option(option);
</pre>
<p>
Getting the current option value:
</p>
<pre class="programlisting">boost::asio::ip::tcp::socket socket(my_context);
...
boost::asio::ip::tcp::no_delay option;
socket.get_option(option);
bool is_set = option.value();
</pre>
<h6>
<a name="boost_asio.reference.ip__tcp.no_delay.h1"></a>
<span class="phrase"><a name="boost_asio.reference.ip__tcp.no_delay.requirements"></a></span><a class="link" href="no_delay.html#boost_asio.reference.ip__tcp.no_delay.requirements">Requirements</a>
</h6>
<p>
<span class="emphasis"><em>Header: </em></span><code class="literal">boost/asio/ip/tcp.hpp</code>
</p>
<p>
<span class="emphasis"><em>Convenience header: </em></span><code class="literal">boost/asio.hpp</code>
</p>
</div>
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
<td align="left"></td>
<td align="right"><div class="copyright-footer">Copyright © 2003-2021 Christopher
M. Kohlhoff<p>
Distributed under the Boost Software License, Version 1.0. (See accompanying
file LICENSE_1_0.txt or copy at <a href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)
</p>
</div></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="iostream.html"><img src="../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../ip__tcp.html"><img src="../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../boost_asio.html"><img src="../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="operator_not__eq_.html"><img src="../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@@ -0,0 +1,63 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>ip::tcp::operator==</title>
<link rel="stylesheet" href="../../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.79.1">
<link rel="home" href="../../../boost_asio.html" title="Boost.Asio">
<link rel="up" href="../ip__tcp.html" title="ip::tcp">
<link rel="prev" href="operator_not__eq_.html" title="ip::tcp::operator!=">
<link rel="next" href="protocol.html" title="ip::tcp::protocol">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../boost.png"></td>
<td align="center"><a href="../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="operator_not__eq_.html"><img src="../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../ip__tcp.html"><img src="../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../boost_asio.html"><img src="../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="protocol.html"><img src="../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="section">
<div class="titlepage"><div><div><h4 class="title">
<a name="boost_asio.reference.ip__tcp.operator_eq__eq_"></a><a class="link" href="operator_eq__eq_.html" title="ip::tcp::operator==">ip::tcp::operator==</a>
</h4></div></div></div>
<p>
<a class="indexterm" name="boost_asio.indexterm.ip__tcp.operator_eq__eq_"></a>
Compare two
protocols for equality.
</p>
<pre class="programlisting">friend bool operator==(
const tcp &amp; p1,
const tcp &amp; p2);
</pre>
<h6>
<a name="boost_asio.reference.ip__tcp.operator_eq__eq_.h0"></a>
<span class="phrase"><a name="boost_asio.reference.ip__tcp.operator_eq__eq_.requirements"></a></span><a class="link" href="operator_eq__eq_.html#boost_asio.reference.ip__tcp.operator_eq__eq_.requirements">Requirements</a>
</h6>
<p>
<span class="emphasis"><em>Header: </em></span><code class="literal">boost/asio/ip/tcp.hpp</code>
</p>
<p>
<span class="emphasis"><em>Convenience header: </em></span><code class="literal">boost/asio.hpp</code>
</p>
</div>
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
<td align="left"></td>
<td align="right"><div class="copyright-footer">Copyright © 2003-2021 Christopher
M. Kohlhoff<p>
Distributed under the Boost Software License, Version 1.0. (See accompanying
file LICENSE_1_0.txt or copy at <a href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)
</p>
</div></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="operator_not__eq_.html"><img src="../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../ip__tcp.html"><img src="../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../boost_asio.html"><img src="../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="protocol.html"><img src="../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@@ -0,0 +1,63 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>ip::tcp::operator!=</title>
<link rel="stylesheet" href="../../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.79.1">
<link rel="home" href="../../../boost_asio.html" title="Boost.Asio">
<link rel="up" href="../ip__tcp.html" title="ip::tcp">
<link rel="prev" href="no_delay.html" title="ip::tcp::no_delay">
<link rel="next" href="operator_eq__eq_.html" title="ip::tcp::operator==">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../boost.png"></td>
<td align="center"><a href="../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="no_delay.html"><img src="../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../ip__tcp.html"><img src="../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../boost_asio.html"><img src="../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="operator_eq__eq_.html"><img src="../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="section">
<div class="titlepage"><div><div><h4 class="title">
<a name="boost_asio.reference.ip__tcp.operator_not__eq_"></a><a class="link" href="operator_not__eq_.html" title="ip::tcp::operator!=">ip::tcp::operator!=</a>
</h4></div></div></div>
<p>
<a class="indexterm" name="boost_asio.indexterm.ip__tcp.operator_not__eq_"></a>
Compare
two protocols for inequality.
</p>
<pre class="programlisting">friend bool operator!=(
const tcp &amp; p1,
const tcp &amp; p2);
</pre>
<h6>
<a name="boost_asio.reference.ip__tcp.operator_not__eq_.h0"></a>
<span class="phrase"><a name="boost_asio.reference.ip__tcp.operator_not__eq_.requirements"></a></span><a class="link" href="operator_not__eq_.html#boost_asio.reference.ip__tcp.operator_not__eq_.requirements">Requirements</a>
</h6>
<p>
<span class="emphasis"><em>Header: </em></span><code class="literal">boost/asio/ip/tcp.hpp</code>
</p>
<p>
<span class="emphasis"><em>Convenience header: </em></span><code class="literal">boost/asio.hpp</code>
</p>
</div>
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
<td align="left"></td>
<td align="right"><div class="copyright-footer">Copyright © 2003-2021 Christopher
M. Kohlhoff<p>
Distributed under the Boost Software License, Version 1.0. (See accompanying
file LICENSE_1_0.txt or copy at <a href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)
</p>
</div></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="no_delay.html"><img src="../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../ip__tcp.html"><img src="../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../boost_asio.html"><img src="../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="operator_eq__eq_.html"><img src="../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@@ -0,0 +1,51 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>ip::tcp::protocol</title>
<link rel="stylesheet" href="../../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.79.1">
<link rel="home" href="../../../boost_asio.html" title="Boost.Asio">
<link rel="up" href="../ip__tcp.html" title="ip::tcp">
<link rel="prev" href="operator_eq__eq_.html" title="ip::tcp::operator==">
<link rel="next" href="resolver.html" title="ip::tcp::resolver">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../boost.png"></td>
<td align="center"><a href="../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="operator_eq__eq_.html"><img src="../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../ip__tcp.html"><img src="../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../boost_asio.html"><img src="../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="resolver.html"><img src="../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="section">
<div class="titlepage"><div><div><h4 class="title">
<a name="boost_asio.reference.ip__tcp.protocol"></a><a class="link" href="protocol.html" title="ip::tcp::protocol">ip::tcp::protocol</a>
</h4></div></div></div>
<p>
<a class="indexterm" name="boost_asio.indexterm.ip__tcp.protocol"></a>
Obtain an identifier
for the protocol.
</p>
<pre class="programlisting">int protocol() const;
</pre>
</div>
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
<td align="left"></td>
<td align="right"><div class="copyright-footer">Copyright © 2003-2021 Christopher
M. Kohlhoff<p>
Distributed under the Boost Software License, Version 1.0. (See accompanying
file LICENSE_1_0.txt or copy at <a href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)
</p>
</div></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="operator_eq__eq_.html"><img src="../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../ip__tcp.html"><img src="../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../boost_asio.html"><img src="../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="resolver.html"><img src="../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@@ -0,0 +1,426 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>ip::tcp::resolver</title>
<link rel="stylesheet" href="../../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.79.1">
<link rel="home" href="../../../boost_asio.html" title="Boost.Asio">
<link rel="up" href="../ip__tcp.html" title="ip::tcp">
<link rel="prev" href="protocol.html" title="ip::tcp::protocol">
<link rel="next" href="socket.html" title="ip::tcp::socket">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../boost.png"></td>
<td align="center"><a href="../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="protocol.html"><img src="../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../ip__tcp.html"><img src="../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../boost_asio.html"><img src="../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="socket.html"><img src="../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="section">
<div class="titlepage"><div><div><h4 class="title">
<a name="boost_asio.reference.ip__tcp.resolver"></a><a class="link" href="resolver.html" title="ip::tcp::resolver">ip::tcp::resolver</a>
</h4></div></div></div>
<p>
<a class="indexterm" name="boost_asio.indexterm.ip__tcp.resolver"></a>
The TCP resolver type.
</p>
<pre class="programlisting">typedef basic_resolver&lt; tcp &gt; resolver;
</pre>
<h6>
<a name="boost_asio.reference.ip__tcp.resolver.h0"></a>
<span class="phrase"><a name="boost_asio.reference.ip__tcp.resolver.types"></a></span><a class="link" href="resolver.html#boost_asio.reference.ip__tcp.resolver.types">Types</a>
</h6>
<div class="informaltable"><table class="table">
<colgroup>
<col>
<col>
</colgroup>
<thead><tr>
<th>
<p>
Name
</p>
</th>
<th>
<p>
Description
</p>
</th>
</tr></thead>
<tbody>
<tr>
<td>
<p>
<a class="link" href="../ip__basic_resolver__rebind_executor.html" title="ip::basic_resolver::rebind_executor"><span class="bold"><strong>rebind_executor</strong></span></a>
</p>
</td>
<td>
<p>
Rebinds the resolver type to another executor.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../ip__basic_resolver/endpoint_type.html" title="ip::basic_resolver::endpoint_type"><span class="bold"><strong>endpoint_type</strong></span></a>
</p>
</td>
<td>
<p>
The endpoint type.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../ip__basic_resolver/executor_type.html" title="ip::basic_resolver::executor_type"><span class="bold"><strong>executor_type</strong></span></a>
</p>
</td>
<td>
<p>
The type of the executor associated with the object.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../ip__basic_resolver/flags.html" title="ip::basic_resolver::flags"><span class="bold"><strong>flags</strong></span></a>
</p>
</td>
<td>
<p>
A bitmask type (C++ Std [lib.bitmask.types]).
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../ip__basic_resolver/iterator.html" title="ip::basic_resolver::iterator"><span class="bold"><strong>iterator</strong></span></a>
</p>
</td>
<td>
<p>
(Deprecated.) The iterator type.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../ip__basic_resolver/protocol_type.html" title="ip::basic_resolver::protocol_type"><span class="bold"><strong>protocol_type</strong></span></a>
</p>
</td>
<td>
<p>
The protocol type.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../ip__basic_resolver/query.html" title="ip::basic_resolver::query"><span class="bold"><strong>query</strong></span></a>
</p>
</td>
<td>
<p>
(Deprecated.) The query type.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../ip__basic_resolver/results_type.html" title="ip::basic_resolver::results_type"><span class="bold"><strong>results_type</strong></span></a>
</p>
</td>
<td>
<p>
The results type.
</p>
</td>
</tr>
</tbody>
</table></div>
<h6>
<a name="boost_asio.reference.ip__tcp.resolver.h1"></a>
<span class="phrase"><a name="boost_asio.reference.ip__tcp.resolver.member_functions"></a></span><a class="link" href="resolver.html#boost_asio.reference.ip__tcp.resolver.member_functions">Member
Functions</a>
</h6>
<div class="informaltable"><table class="table">
<colgroup>
<col>
<col>
</colgroup>
<thead><tr>
<th>
<p>
Name
</p>
</th>
<th>
<p>
Description
</p>
</th>
</tr></thead>
<tbody>
<tr>
<td>
<p>
<a class="link" href="../ip__basic_resolver/async_resolve.html" title="ip::basic_resolver::async_resolve"><span class="bold"><strong>async_resolve</strong></span></a>
</p>
</td>
<td>
<p>
(Deprecated: Use overload with separate host and service parameters.)
Asynchronously perform forward resolution of a query to a list
of entries. <br> <span class="silver"></span><br> Asynchronously perform forward resolution
of a query to a list of entries. <br> <span class="silver"></span><br> Asynchronously
perform reverse resolution of an endpoint to a list of entries.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../ip__basic_resolver/basic_resolver.html" title="ip::basic_resolver::basic_resolver"><span class="bold"><strong>basic_resolver</strong></span></a> <span class="silver">[constructor]</span>
</p>
</td>
<td>
<p>
Construct with executor. <br> <span class="silver"></span><br> Construct with execution
context. <br> <span class="silver"></span><br> Move-construct a basic_resolver from another.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../ip__basic_resolver/cancel.html" title="ip::basic_resolver::cancel"><span class="bold"><strong>cancel</strong></span></a>
</p>
</td>
<td>
<p>
Cancel any asynchronous operations that are waiting on the resolver.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../ip__basic_resolver/get_executor.html" title="ip::basic_resolver::get_executor"><span class="bold"><strong>get_executor</strong></span></a>
</p>
</td>
<td>
<p>
Get the executor associated with the object.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../ip__basic_resolver/operator_eq_.html" title="ip::basic_resolver::operator="><span class="bold"><strong>operator=</strong></span></a>
</p>
</td>
<td>
<p>
Move-assign a basic_resolver from another.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../ip__basic_resolver/resolve.html" title="ip::basic_resolver::resolve"><span class="bold"><strong>resolve</strong></span></a>
</p>
</td>
<td>
<p>
(Deprecated: Use overload with separate host and service parameters.)
Perform forward resolution of a query to a list of entries.
<br> <span class="silver"></span><br> Perform forward resolution of a query to a list
of entries. <br> <span class="silver"></span><br> Perform reverse resolution of an endpoint
to a list of entries.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../ip__basic_resolver/_basic_resolver.html" title="ip::basic_resolver::~basic_resolver"><span class="bold"><strong>~basic_resolver</strong></span></a> <span class="silver">[destructor]</span>
</p>
</td>
<td>
<p>
Destroys the resolver.
</p>
</td>
</tr>
</tbody>
</table></div>
<h6>
<a name="boost_asio.reference.ip__tcp.resolver.h2"></a>
<span class="phrase"><a name="boost_asio.reference.ip__tcp.resolver.data_members"></a></span><a class="link" href="resolver.html#boost_asio.reference.ip__tcp.resolver.data_members">Data Members</a>
</h6>
<div class="informaltable"><table class="table">
<colgroup>
<col>
<col>
</colgroup>
<thead><tr>
<th>
<p>
Name
</p>
</th>
<th>
<p>
Description
</p>
</th>
</tr></thead>
<tbody>
<tr>
<td>
<p>
<a class="link" href="../ip__basic_resolver/address_configured.html" title="ip::basic_resolver::address_configured"><span class="bold"><strong>address_configured</strong></span></a> <span class="silver">[static]</span>
</p>
</td>
<td>
<p>
Only return IPv4 addresses if a non-loopback IPv4 address is
configured for the system. Only return IPv6 addresses if a non-loopback
IPv6 address is configured for the system.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../ip__basic_resolver/all_matching.html" title="ip::basic_resolver::all_matching"><span class="bold"><strong>all_matching</strong></span></a> <span class="silver">[static]</span>
</p>
</td>
<td>
<p>
If used with v4_mapped, return all matching IPv6 and IPv4 addresses.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../ip__basic_resolver/canonical_name.html" title="ip::basic_resolver::canonical_name"><span class="bold"><strong>canonical_name</strong></span></a> <span class="silver">[static]</span>
</p>
</td>
<td>
<p>
Determine the canonical name of the host specified in the query.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../ip__basic_resolver/numeric_host.html" title="ip::basic_resolver::numeric_host"><span class="bold"><strong>numeric_host</strong></span></a> <span class="silver">[static]</span>
</p>
</td>
<td>
<p>
Host name should be treated as a numeric string defining an IPv4
or IPv6 address and no name resolution should be attempted.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../ip__basic_resolver/numeric_service.html" title="ip::basic_resolver::numeric_service"><span class="bold"><strong>numeric_service</strong></span></a> <span class="silver">[static]</span>
</p>
</td>
<td>
<p>
Service name should be treated as a numeric string defining a
port number and no name resolution should be attempted.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../ip__basic_resolver/passive.html" title="ip::basic_resolver::passive"><span class="bold"><strong>passive</strong></span></a> <span class="silver">[static]</span>
</p>
</td>
<td>
<p>
Indicate that returned endpoint is intended for use as a locally
bound socket endpoint.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../ip__basic_resolver/v4_mapped.html" title="ip::basic_resolver::v4_mapped"><span class="bold"><strong>v4_mapped</strong></span></a> <span class="silver">[static]</span>
</p>
</td>
<td>
<p>
If the query protocol family is specified as IPv6, return IPv4-mapped
IPv6 addresses on finding no IPv6 addresses.
</p>
</td>
</tr>
</tbody>
</table></div>
<p>
The <a class="link" href="../ip__basic_resolver.html" title="ip::basic_resolver"><code class="computeroutput">ip::basic_resolver</code></a>
class template provides the ability to resolve a query to a list of endpoints.
</p>
<h6>
<a name="boost_asio.reference.ip__tcp.resolver.h3"></a>
<span class="phrase"><a name="boost_asio.reference.ip__tcp.resolver.thread_safety"></a></span><a class="link" href="resolver.html#boost_asio.reference.ip__tcp.resolver.thread_safety">Thread Safety</a>
</h6>
<p>
<span class="emphasis"><em>Distinct</em></span> <span class="emphasis"><em>objects:</em></span> Safe.
</p>
<p>
<span class="emphasis"><em>Shared</em></span> <span class="emphasis"><em>objects:</em></span> Unsafe.
</p>
<h6>
<a name="boost_asio.reference.ip__tcp.resolver.h4"></a>
<span class="phrase"><a name="boost_asio.reference.ip__tcp.resolver.requirements"></a></span><a class="link" href="resolver.html#boost_asio.reference.ip__tcp.resolver.requirements">Requirements</a>
</h6>
<p>
<span class="emphasis"><em>Header: </em></span><code class="literal">boost/asio/ip/tcp.hpp</code>
</p>
<p>
<span class="emphasis"><em>Convenience header: </em></span><code class="literal">boost/asio.hpp</code>
</p>
</div>
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
<td align="left"></td>
<td align="right"><div class="copyright-footer">Copyright © 2003-2021 Christopher
M. Kohlhoff<p>
Distributed under the Boost Software License, Version 1.0. (See accompanying
file LICENSE_1_0.txt or copy at <a href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)
</p>
</div></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="protocol.html"><img src="../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../ip__tcp.html"><img src="../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../boost_asio.html"><img src="../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="socket.html"><img src="../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@@ -0,0 +1,933 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>ip::tcp::socket</title>
<link rel="stylesheet" href="../../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.79.1">
<link rel="home" href="../../../boost_asio.html" title="Boost.Asio">
<link rel="up" href="../ip__tcp.html" title="ip::tcp">
<link rel="prev" href="resolver.html" title="ip::tcp::resolver">
<link rel="next" href="type.html" title="ip::tcp::type">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../boost.png"></td>
<td align="center"><a href="../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="resolver.html"><img src="../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../ip__tcp.html"><img src="../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../boost_asio.html"><img src="../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="type.html"><img src="../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="section">
<div class="titlepage"><div><div><h4 class="title">
<a name="boost_asio.reference.ip__tcp.socket"></a><a class="link" href="socket.html" title="ip::tcp::socket">ip::tcp::socket</a>
</h4></div></div></div>
<p>
<a class="indexterm" name="boost_asio.indexterm.ip__tcp.socket"></a>
The TCP socket type.
</p>
<pre class="programlisting">typedef basic_stream_socket&lt; tcp &gt; socket;
</pre>
<h6>
<a name="boost_asio.reference.ip__tcp.socket.h0"></a>
<span class="phrase"><a name="boost_asio.reference.ip__tcp.socket.types"></a></span><a class="link" href="socket.html#boost_asio.reference.ip__tcp.socket.types">Types</a>
</h6>
<div class="informaltable"><table class="table">
<colgroup>
<col>
<col>
</colgroup>
<thead><tr>
<th>
<p>
Name
</p>
</th>
<th>
<p>
Description
</p>
</th>
</tr></thead>
<tbody>
<tr>
<td>
<p>
<a class="link" href="../basic_stream_socket__rebind_executor.html" title="basic_stream_socket::rebind_executor"><span class="bold"><strong>rebind_executor</strong></span></a>
</p>
</td>
<td>
<p>
Rebinds the socket type to another executor.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../basic_stream_socket/broadcast.html" title="basic_stream_socket::broadcast"><span class="bold"><strong>broadcast</strong></span></a>
</p>
</td>
<td>
<p>
Socket option to permit sending of broadcast messages.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../basic_stream_socket/bytes_readable.html" title="basic_stream_socket::bytes_readable"><span class="bold"><strong>bytes_readable</strong></span></a>
</p>
</td>
<td>
<p>
IO control command to get the amount of data that can be read
without blocking.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../basic_stream_socket/debug.html" title="basic_stream_socket::debug"><span class="bold"><strong>debug</strong></span></a>
</p>
</td>
<td>
<p>
Socket option to enable socket-level debugging.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../basic_stream_socket/do_not_route.html" title="basic_stream_socket::do_not_route"><span class="bold"><strong>do_not_route</strong></span></a>
</p>
</td>
<td>
<p>
Socket option to prevent routing, use local interfaces only.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../basic_stream_socket/enable_connection_aborted.html" title="basic_stream_socket::enable_connection_aborted"><span class="bold"><strong>enable_connection_aborted</strong></span></a>
</p>
</td>
<td>
<p>
Socket option to report aborted connections on accept.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../basic_stream_socket/endpoint_type.html" title="basic_stream_socket::endpoint_type"><span class="bold"><strong>endpoint_type</strong></span></a>
</p>
</td>
<td>
<p>
The endpoint type.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../basic_stream_socket/executor_type.html" title="basic_stream_socket::executor_type"><span class="bold"><strong>executor_type</strong></span></a>
</p>
</td>
<td>
<p>
The type of the executor associated with the object.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../basic_stream_socket/keep_alive.html" title="basic_stream_socket::keep_alive"><span class="bold"><strong>keep_alive</strong></span></a>
</p>
</td>
<td>
<p>
Socket option to send keep-alives.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../basic_stream_socket/linger.html" title="basic_stream_socket::linger"><span class="bold"><strong>linger</strong></span></a>
</p>
</td>
<td>
<p>
Socket option to specify whether the socket lingers on close
if unsent data is present.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../basic_stream_socket/lowest_layer_type.html" title="basic_stream_socket::lowest_layer_type"><span class="bold"><strong>lowest_layer_type</strong></span></a>
</p>
</td>
<td>
<p>
A basic_socket is always the lowest layer.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../basic_stream_socket/message_flags.html" title="basic_stream_socket::message_flags"><span class="bold"><strong>message_flags</strong></span></a>
</p>
</td>
<td>
<p>
Bitmask type for flags that can be passed to send and receive
operations.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../basic_stream_socket/native_handle_type.html" title="basic_stream_socket::native_handle_type"><span class="bold"><strong>native_handle_type</strong></span></a>
</p>
</td>
<td>
<p>
The native representation of a socket.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../basic_stream_socket/out_of_band_inline.html" title="basic_stream_socket::out_of_band_inline"><span class="bold"><strong>out_of_band_inline</strong></span></a>
</p>
</td>
<td>
<p>
Socket option for putting received out-of-band data inline.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../basic_stream_socket/protocol_type.html" title="basic_stream_socket::protocol_type"><span class="bold"><strong>protocol_type</strong></span></a>
</p>
</td>
<td>
<p>
The protocol type.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../basic_stream_socket/receive_buffer_size.html" title="basic_stream_socket::receive_buffer_size"><span class="bold"><strong>receive_buffer_size</strong></span></a>
</p>
</td>
<td>
<p>
Socket option for the receive buffer size of a socket.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../basic_stream_socket/receive_low_watermark.html" title="basic_stream_socket::receive_low_watermark"><span class="bold"><strong>receive_low_watermark</strong></span></a>
</p>
</td>
<td>
<p>
Socket option for the receive low watermark.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../basic_stream_socket/reuse_address.html" title="basic_stream_socket::reuse_address"><span class="bold"><strong>reuse_address</strong></span></a>
</p>
</td>
<td>
<p>
Socket option to allow the socket to be bound to an address that
is already in use.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../basic_stream_socket/send_buffer_size.html" title="basic_stream_socket::send_buffer_size"><span class="bold"><strong>send_buffer_size</strong></span></a>
</p>
</td>
<td>
<p>
Socket option for the send buffer size of a socket.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../basic_stream_socket/send_low_watermark.html" title="basic_stream_socket::send_low_watermark"><span class="bold"><strong>send_low_watermark</strong></span></a>
</p>
</td>
<td>
<p>
Socket option for the send low watermark.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../basic_stream_socket/shutdown_type.html" title="basic_stream_socket::shutdown_type"><span class="bold"><strong>shutdown_type</strong></span></a>
</p>
</td>
<td>
<p>
Different ways a socket may be shutdown.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../basic_stream_socket/wait_type.html" title="basic_stream_socket::wait_type"><span class="bold"><strong>wait_type</strong></span></a>
</p>
</td>
<td>
<p>
Wait types.
</p>
</td>
</tr>
</tbody>
</table></div>
<h6>
<a name="boost_asio.reference.ip__tcp.socket.h1"></a>
<span class="phrase"><a name="boost_asio.reference.ip__tcp.socket.member_functions"></a></span><a class="link" href="socket.html#boost_asio.reference.ip__tcp.socket.member_functions">Member Functions</a>
</h6>
<div class="informaltable"><table class="table">
<colgroup>
<col>
<col>
</colgroup>
<thead><tr>
<th>
<p>
Name
</p>
</th>
<th>
<p>
Description
</p>
</th>
</tr></thead>
<tbody>
<tr>
<td>
<p>
<a class="link" href="../basic_stream_socket/assign.html" title="basic_stream_socket::assign"><span class="bold"><strong>assign</strong></span></a>
</p>
</td>
<td>
<p>
Assign an existing native socket to the socket.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../basic_stream_socket/async_connect.html" title="basic_stream_socket::async_connect"><span class="bold"><strong>async_connect</strong></span></a>
</p>
</td>
<td>
<p>
Start an asynchronous connect.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../basic_stream_socket/async_read_some.html" title="basic_stream_socket::async_read_some"><span class="bold"><strong>async_read_some</strong></span></a>
</p>
</td>
<td>
<p>
Start an asynchronous read.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../basic_stream_socket/async_receive.html" title="basic_stream_socket::async_receive"><span class="bold"><strong>async_receive</strong></span></a>
</p>
</td>
<td>
<p>
Start an asynchronous receive.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../basic_stream_socket/async_send.html" title="basic_stream_socket::async_send"><span class="bold"><strong>async_send</strong></span></a>
</p>
</td>
<td>
<p>
Start an asynchronous send.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../basic_stream_socket/async_wait.html" title="basic_stream_socket::async_wait"><span class="bold"><strong>async_wait</strong></span></a>
</p>
</td>
<td>
<p>
Asynchronously wait for the socket to become ready to read, ready
to write, or to have pending error conditions.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../basic_stream_socket/async_write_some.html" title="basic_stream_socket::async_write_some"><span class="bold"><strong>async_write_some</strong></span></a>
</p>
</td>
<td>
<p>
Start an asynchronous write.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../basic_stream_socket/at_mark.html" title="basic_stream_socket::at_mark"><span class="bold"><strong>at_mark</strong></span></a>
</p>
</td>
<td>
<p>
Determine whether the socket is at the out-of-band data mark.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../basic_stream_socket/available.html" title="basic_stream_socket::available"><span class="bold"><strong>available</strong></span></a>
</p>
</td>
<td>
<p>
Determine the number of bytes available for reading.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../basic_stream_socket/basic_stream_socket.html" title="basic_stream_socket::basic_stream_socket"><span class="bold"><strong>basic_stream_socket</strong></span></a> <span class="silver">[constructor]</span>
</p>
</td>
<td>
<p>
Construct a basic_stream_socket without opening it. <br> <span class="silver"></span><br>
Construct and open a basic_stream_socket. <br> <span class="silver"></span><br> Construct
a basic_stream_socket, opening it and binding it to the given
local endpoint. <br> <span class="silver"></span><br> Construct a basic_stream_socket
on an existing native socket. <br> <span class="silver"></span><br> Move-construct a
basic_stream_socket from another. <br> <span class="silver"></span><br> Move-construct
a basic_stream_socket from a socket of another protocol type.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../basic_stream_socket/bind.html" title="basic_stream_socket::bind"><span class="bold"><strong>bind</strong></span></a>
</p>
</td>
<td>
<p>
Bind the socket to the given local endpoint.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../basic_stream_socket/cancel.html" title="basic_stream_socket::cancel"><span class="bold"><strong>cancel</strong></span></a>
</p>
</td>
<td>
<p>
Cancel all asynchronous operations associated with the socket.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../basic_stream_socket/close.html" title="basic_stream_socket::close"><span class="bold"><strong>close</strong></span></a>
</p>
</td>
<td>
<p>
Close the socket.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../basic_stream_socket/connect.html" title="basic_stream_socket::connect"><span class="bold"><strong>connect</strong></span></a>
</p>
</td>
<td>
<p>
Connect the socket to the specified endpoint.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../basic_stream_socket/get_executor.html" title="basic_stream_socket::get_executor"><span class="bold"><strong>get_executor</strong></span></a>
</p>
</td>
<td>
<p>
Get the executor associated with the object.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../basic_stream_socket/get_option.html" title="basic_stream_socket::get_option"><span class="bold"><strong>get_option</strong></span></a>
</p>
</td>
<td>
<p>
Get an option from the socket.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../basic_stream_socket/io_control.html" title="basic_stream_socket::io_control"><span class="bold"><strong>io_control</strong></span></a>
</p>
</td>
<td>
<p>
Perform an IO control command on the socket.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../basic_stream_socket/is_open.html" title="basic_stream_socket::is_open"><span class="bold"><strong>is_open</strong></span></a>
</p>
</td>
<td>
<p>
Determine whether the socket is open.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../basic_stream_socket/local_endpoint.html" title="basic_stream_socket::local_endpoint"><span class="bold"><strong>local_endpoint</strong></span></a>
</p>
</td>
<td>
<p>
Get the local endpoint of the socket.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../basic_stream_socket/lowest_layer.html" title="basic_stream_socket::lowest_layer"><span class="bold"><strong>lowest_layer</strong></span></a>
</p>
</td>
<td>
<p>
Get a reference to the lowest layer. <br> <span class="silver"></span><br> Get a const
reference to the lowest layer.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../basic_stream_socket/native_handle.html" title="basic_stream_socket::native_handle"><span class="bold"><strong>native_handle</strong></span></a>
</p>
</td>
<td>
<p>
Get the native socket representation.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../basic_stream_socket/native_non_blocking.html" title="basic_stream_socket::native_non_blocking"><span class="bold"><strong>native_non_blocking</strong></span></a>
</p>
</td>
<td>
<p>
Gets the non-blocking mode of the native socket implementation.
<br> <span class="silver"></span><br> Sets the non-blocking mode of the native socket
implementation.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../basic_stream_socket/non_blocking.html" title="basic_stream_socket::non_blocking"><span class="bold"><strong>non_blocking</strong></span></a>
</p>
</td>
<td>
<p>
Gets the non-blocking mode of the socket. <br> <span class="silver"></span><br> Sets
the non-blocking mode of the socket.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../basic_stream_socket/open.html" title="basic_stream_socket::open"><span class="bold"><strong>open</strong></span></a>
</p>
</td>
<td>
<p>
Open the socket using the specified protocol.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../basic_stream_socket/operator_eq_.html" title="basic_stream_socket::operator="><span class="bold"><strong>operator=</strong></span></a>
</p>
</td>
<td>
<p>
Move-assign a basic_stream_socket from another. <br> <span class="silver"></span><br>
Move-assign a basic_stream_socket from a socket of another protocol
type.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../basic_stream_socket/read_some.html" title="basic_stream_socket::read_some"><span class="bold"><strong>read_some</strong></span></a>
</p>
</td>
<td>
<p>
Read some data from the socket.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../basic_stream_socket/receive.html" title="basic_stream_socket::receive"><span class="bold"><strong>receive</strong></span></a>
</p>
</td>
<td>
<p>
Receive some data on the socket. <br> <span class="silver"></span><br> Receive some data
on a connected socket.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../basic_stream_socket/release.html" title="basic_stream_socket::release"><span class="bold"><strong>release</strong></span></a>
</p>
</td>
<td>
<p>
Release ownership of the underlying native socket.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../basic_stream_socket/remote_endpoint.html" title="basic_stream_socket::remote_endpoint"><span class="bold"><strong>remote_endpoint</strong></span></a>
</p>
</td>
<td>
<p>
Get the remote endpoint of the socket.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../basic_stream_socket/send.html" title="basic_stream_socket::send"><span class="bold"><strong>send</strong></span></a>
</p>
</td>
<td>
<p>
Send some data on the socket.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../basic_stream_socket/set_option.html" title="basic_stream_socket::set_option"><span class="bold"><strong>set_option</strong></span></a>
</p>
</td>
<td>
<p>
Set an option on the socket.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../basic_stream_socket/shutdown.html" title="basic_stream_socket::shutdown"><span class="bold"><strong>shutdown</strong></span></a>
</p>
</td>
<td>
<p>
Disable sends or receives on the socket.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../basic_stream_socket/wait.html" title="basic_stream_socket::wait"><span class="bold"><strong>wait</strong></span></a>
</p>
</td>
<td>
<p>
Wait for the socket to become ready to read, ready to write,
or to have pending error conditions.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../basic_stream_socket/write_some.html" title="basic_stream_socket::write_some"><span class="bold"><strong>write_some</strong></span></a>
</p>
</td>
<td>
<p>
Write some data to the socket.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../basic_stream_socket/_basic_stream_socket.html" title="basic_stream_socket::~basic_stream_socket"><span class="bold"><strong>~basic_stream_socket</strong></span></a> <span class="silver">[destructor]</span>
</p>
</td>
<td>
<p>
Destroys the socket.
</p>
</td>
</tr>
</tbody>
</table></div>
<h6>
<a name="boost_asio.reference.ip__tcp.socket.h2"></a>
<span class="phrase"><a name="boost_asio.reference.ip__tcp.socket.data_members"></a></span><a class="link" href="socket.html#boost_asio.reference.ip__tcp.socket.data_members">Data
Members</a>
</h6>
<div class="informaltable"><table class="table">
<colgroup>
<col>
<col>
</colgroup>
<thead><tr>
<th>
<p>
Name
</p>
</th>
<th>
<p>
Description
</p>
</th>
</tr></thead>
<tbody>
<tr>
<td>
<p>
<a class="link" href="../basic_stream_socket/max_connections.html" title="basic_stream_socket::max_connections"><span class="bold"><strong>max_connections</strong></span></a> <span class="silver">[static]</span>
</p>
</td>
<td>
<p>
(Deprecated: Use max_listen_connections.) The maximum length
of the queue of pending incoming connections.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../basic_stream_socket/max_listen_connections.html" title="basic_stream_socket::max_listen_connections"><span class="bold"><strong>max_listen_connections</strong></span></a> <span class="silver">[static]</span>
</p>
</td>
<td>
<p>
The maximum length of the queue of pending incoming connections.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../basic_stream_socket/message_do_not_route.html" title="basic_stream_socket::message_do_not_route"><span class="bold"><strong>message_do_not_route</strong></span></a> <span class="silver">[static]</span>
</p>
</td>
<td>
<p>
Specify that the data should not be subject to routing.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../basic_stream_socket/message_end_of_record.html" title="basic_stream_socket::message_end_of_record"><span class="bold"><strong>message_end_of_record</strong></span></a> <span class="silver">[static]</span>
</p>
</td>
<td>
<p>
Specifies that the data marks the end of a record.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../basic_stream_socket/message_out_of_band.html" title="basic_stream_socket::message_out_of_band"><span class="bold"><strong>message_out_of_band</strong></span></a> <span class="silver">[static]</span>
</p>
</td>
<td>
<p>
Process out-of-band data.
</p>
</td>
</tr>
<tr>
<td>
<p>
<a class="link" href="../basic_stream_socket/message_peek.html" title="basic_stream_socket::message_peek"><span class="bold"><strong>message_peek</strong></span></a> <span class="silver">[static]</span>
</p>
</td>
<td>
<p>
Peek at incoming data without removing it from the input queue.
</p>
</td>
</tr>
</tbody>
</table></div>
<p>
The <a class="link" href="../basic_stream_socket.html" title="basic_stream_socket"><code class="computeroutput">basic_stream_socket</code></a>
class template provides asynchronous and blocking stream-oriented socket
functionality.
</p>
<h6>
<a name="boost_asio.reference.ip__tcp.socket.h3"></a>
<span class="phrase"><a name="boost_asio.reference.ip__tcp.socket.thread_safety"></a></span><a class="link" href="socket.html#boost_asio.reference.ip__tcp.socket.thread_safety">Thread
Safety</a>
</h6>
<p>
<span class="emphasis"><em>Distinct</em></span> <span class="emphasis"><em>objects:</em></span> Safe.
</p>
<p>
<span class="emphasis"><em>Shared</em></span> <span class="emphasis"><em>objects:</em></span> Unsafe.
</p>
<p>
Synchronous <code class="computeroutput">send</code>, <code class="computeroutput">receive</code>, and <code class="computeroutput">connect</code>
operations are thread safe with respect to each other, if the underlying
operating system calls are also thread safe. This means that it is permitted
to perform concurrent calls to these synchronous operations on a single
socket object. Other synchronous operations, such as <code class="computeroutput">open</code>
or <code class="computeroutput">close</code>, are not thread safe.
</p>
<h6>
<a name="boost_asio.reference.ip__tcp.socket.h4"></a>
<span class="phrase"><a name="boost_asio.reference.ip__tcp.socket.requirements"></a></span><a class="link" href="socket.html#boost_asio.reference.ip__tcp.socket.requirements">Requirements</a>
</h6>
<p>
<span class="emphasis"><em>Header: </em></span><code class="literal">boost/asio/ip/tcp.hpp</code>
</p>
<p>
<span class="emphasis"><em>Convenience header: </em></span><code class="literal">boost/asio.hpp</code>
</p>
</div>
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
<td align="left"></td>
<td align="right"><div class="copyright-footer">Copyright © 2003-2021 Christopher
M. Kohlhoff<p>
Distributed under the Boost Software License, Version 1.0. (See accompanying
file LICENSE_1_0.txt or copy at <a href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)
</p>
</div></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="resolver.html"><img src="../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../ip__tcp.html"><img src="../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../boost_asio.html"><img src="../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="type.html"><img src="../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@@ -0,0 +1,51 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>ip::tcp::type</title>
<link rel="stylesheet" href="../../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.79.1">
<link rel="home" href="../../../boost_asio.html" title="Boost.Asio">
<link rel="up" href="../ip__tcp.html" title="ip::tcp">
<link rel="prev" href="socket.html" title="ip::tcp::socket">
<link rel="next" href="v4.html" title="ip::tcp::v4">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../boost.png"></td>
<td align="center"><a href="../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="socket.html"><img src="../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../ip__tcp.html"><img src="../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../boost_asio.html"><img src="../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="v4.html"><img src="../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="section">
<div class="titlepage"><div><div><h4 class="title">
<a name="boost_asio.reference.ip__tcp.type"></a><a class="link" href="type.html" title="ip::tcp::type">ip::tcp::type</a>
</h4></div></div></div>
<p>
<a class="indexterm" name="boost_asio.indexterm.ip__tcp.type"></a>
Obtain an identifier for the
type of the protocol.
</p>
<pre class="programlisting">int type() const;
</pre>
</div>
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
<td align="left"></td>
<td align="right"><div class="copyright-footer">Copyright © 2003-2021 Christopher
M. Kohlhoff<p>
Distributed under the Boost Software License, Version 1.0. (See accompanying
file LICENSE_1_0.txt or copy at <a href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)
</p>
</div></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="socket.html"><img src="../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../ip__tcp.html"><img src="../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../boost_asio.html"><img src="../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="v4.html"><img src="../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@@ -0,0 +1,51 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>ip::tcp::v4</title>
<link rel="stylesheet" href="../../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.79.1">
<link rel="home" href="../../../boost_asio.html" title="Boost.Asio">
<link rel="up" href="../ip__tcp.html" title="ip::tcp">
<link rel="prev" href="type.html" title="ip::tcp::type">
<link rel="next" href="v6.html" title="ip::tcp::v6">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../boost.png"></td>
<td align="center"><a href="../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="type.html"><img src="../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../ip__tcp.html"><img src="../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../boost_asio.html"><img src="../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="v6.html"><img src="../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="section">
<div class="titlepage"><div><div><h4 class="title">
<a name="boost_asio.reference.ip__tcp.v4"></a><a class="link" href="v4.html" title="ip::tcp::v4">ip::tcp::v4</a>
</h4></div></div></div>
<p>
<a class="indexterm" name="boost_asio.indexterm.ip__tcp.v4"></a>
Construct to represent the IPv4
TCP protocol.
</p>
<pre class="programlisting">static tcp v4();
</pre>
</div>
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
<td align="left"></td>
<td align="right"><div class="copyright-footer">Copyright © 2003-2021 Christopher
M. Kohlhoff<p>
Distributed under the Boost Software License, Version 1.0. (See accompanying
file LICENSE_1_0.txt or copy at <a href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)
</p>
</div></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="type.html"><img src="../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../ip__tcp.html"><img src="../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../boost_asio.html"><img src="../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="v6.html"><img src="../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@@ -0,0 +1,51 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>ip::tcp::v6</title>
<link rel="stylesheet" href="../../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.79.1">
<link rel="home" href="../../../boost_asio.html" title="Boost.Asio">
<link rel="up" href="../ip__tcp.html" title="ip::tcp">
<link rel="prev" href="v4.html" title="ip::tcp::v4">
<link rel="next" href="../ip__udp.html" title="ip::udp">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../boost.png"></td>
<td align="center"><a href="../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="v4.html"><img src="../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../ip__tcp.html"><img src="../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../boost_asio.html"><img src="../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="../ip__udp.html"><img src="../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="section">
<div class="titlepage"><div><div><h4 class="title">
<a name="boost_asio.reference.ip__tcp.v6"></a><a class="link" href="v6.html" title="ip::tcp::v6">ip::tcp::v6</a>
</h4></div></div></div>
<p>
<a class="indexterm" name="boost_asio.indexterm.ip__tcp.v6"></a>
Construct to represent the IPv6
TCP protocol.
</p>
<pre class="programlisting">static tcp v6();
</pre>
</div>
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
<td align="left"></td>
<td align="right"><div class="copyright-footer">Copyright © 2003-2021 Christopher
M. Kohlhoff<p>
Distributed under the Boost Software License, Version 1.0. (See accompanying
file LICENSE_1_0.txt or copy at <a href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)
</p>
</div></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="v4.html"><img src="../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../ip__tcp.html"><img src="../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../boost_asio.html"><img src="../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="../ip__udp.html"><img src="../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>