without opening it.
basic_datagram_socket( const executor_type & ex);
This constructor creates a datagram socket without opening it. The
function must be called before data can be sent or received on the socket.
The I/O executor that the socket will use, by default, to dispatch handlers for any asynchronous operations performed on the socket.