| Home | Libraries | People | FAQ | More

### datagram_socket_service

Default service implementation for a datagram socket.

    template<
        typename Protocol>
    class datagram_socket_service :
      public io_service::service

##### Types

Name | Description
--- | ---
endpoint_type | The endpoint type.
implementation_type | The type of a datagram socket.
native_handle_type | The native socket type.
native_type | (Deprecated: Use native_handle_type.) The native socket type.
protocol_type | The protocol type.

##### Member Functions

Name | Description
--- | ---
assign | Assign an existing native socket to a datagram socket.
async_connect | Start an asynchronous connect.
async_receive | Start an asynchronous receive.
async_receive_from | Start an asynchronous receive that will get the endpoint of the sender.
async_send | Start an asynchronous send.
async_send_to | Start an asynchronous send.
at_mark | Determine whether the socket is at the out-of-band data mark.
available | Determine the number of bytes available for reading.
bind |
cancel | Cancel all asynchronous operations associated with the socket.
close | Close a datagram socket implementation.
connect | Connect the datagram socket to the specified endpoint.
construct | Construct a new datagram socket implementation.
datagram_socket_service | Construct a new datagram socket service for the specified io_service.
destroy | Destroy a datagram socket implementation.
get_io_service | Get the io_service object that owns the service.
get_option | Get a socket option.
io_control | Perform an IO control command on the socket.
is_open | Determine whether the socket is open.
local_endpoint | Get the local endpoint.
move_assign | Move-assign from another datagram socket implementation.
move_construct | Move-construct a new datagram socket implementation.
native | (Deprecated: Use native_handle().) Get the native socket implementation.
native_handle | Get the native socket implementation.
native_non_blocking | Gets the non-blocking mode of the native socket implementation. Sets the non-blocking mode of the native socket implementation.
non_blocking | Gets the non-blocking mode of the socket. Sets the non-blocking mode of the socket.
open |
receive | Receive some data from the peer.
receive_from | Receive a datagram with the endpoint of the sender.
remote_endpoint | Get the remote endpoint.
send | Send the given data to the peer.
send_to | Send a datagram to the specified endpoint.
set_option | Set a socket option.
shutdown | Disable sends or receives on the socket.

##### Data Members

Name | Description
--- | ---
id | The unique service identifier.

##### Requirements

Header: `boost/asio/datagram_socket_service.hpp`

Convenience header: `boost/asio.hpp`