Release ownership of the native descriptor implementation.
native_handle_type release();
This function may be used to obtain the underlying representation of the
descriptor. After calling this function, is_open()
returns
false. The caller is responsible for closing the descriptor.
All outstanding asynchronous read or write operations will finish immediately,
and the handlers for cancelled operations will be passed the asio::error::operation_aborted
error.