...one of the most highly
regarded and expertly designed C++ library projects in the
world.
— Herb Sutter and Andrei
Alexandrescu, C++
Coding Standards
Provides socket functionality.
template< typename Protocol, typename SocketService> class basic_socket : public basic_io_object< SocketService >, public socket_base
Name |
Description |
---|---|
Socket option to permit sending of broadcast messages. |
|
IO control command to get the amount of data that can be read without blocking. |
|
Socket option to enable socket-level debugging. |
|
Socket option to prevent routing, use local interfaces only. |
|
Socket option to report aborted connections on accept. |
|
The endpoint type. |
|
The underlying implementation type of I/O object. |
|
Socket option to send keep-alives. |
|
Socket option to specify whether the socket lingers on close if unsent data is present. |
|
A basic_socket is always the lowest layer. |
|
Bitmask type for flags that can be passed to send and receive operations. |
|
The native representation of a socket. |
|
IO control command to set the blocking mode of the socket. |
|
The protocol type. |
|
Socket option for the receive buffer size of a socket. |
|
Socket option for the receive low watermark. |
|
Socket option to allow the socket to be bound to an address that is already in use. |
|
Socket option for the send buffer size of a socket. |
|
Socket option for the send low watermark. |
|
The type of the service that will be used to provide I/O operations. |
|
Different ways a socket may be shutdown. |
Name |
Description |
---|---|
Assign an existing native socket to the socket. |
|
Start an asynchronous connect. |
|
Determine whether the socket is at the out-of-band data mark. |
|
Determine the number of bytes available for reading. |
|
Construct a basic_socket without opening it. Construct and open a basic_socket. Construct a basic_socket, opening it and binding it to the given local endpoint. Construct a basic_socket on an existing native socket. |
|
Bind the socket to the given local endpoint. |
|
Cancel all asynchronous operations associated with the socket. |
|
Close the socket. |
|
Connect the socket to the specified endpoint. |
|
Get the io_service associated with the object. |
|
Get an option from the socket. |
|
Perform an IO control command on the socket. |
|
(Deprecated: use get_io_service().) Get the io_service associated with the object. |
|
Determine whether the socket is open. |
|
Get the local endpoint of the socket. |
|
Get a reference to the lowest layer. Get a const reference to the lowest layer. |
|
Get the native socket representation. |
|
Open the socket using the specified protocol. |
|
Get the remote endpoint of the socket. |
|
Set an option on the socket. |
|
Disable sends or receives on the socket. |
Name |
Description |
---|---|
Protected destructor to prevent deletion through this type. |
Name |
Description |
---|---|
The maximum length of the queue of pending incoming connections. |
|
Specify that the data should not be subject to routing. |
|
Process out-of-band data. |
|
Peek at incoming data without removing it from the input queue. |
Name |
Description |
---|---|
The underlying implementation of the I/O object. |
|
The service associated with the I/O object. |
The basic_socket
class template provides functionality that is common to both stream-oriented
and datagram-oriented sockets.
Distinct objects: Safe.
Shared objects: Unsafe.
Header: boost/asio/basic_socket.hpp
Convenience header: boost/asio.hpp