Boost C++ Libraries Home Libraries People FAQ More

PrevUpHomeNext
any_connection::async_close (1 of 2 overloads)

Cleanly closes the connection to the server.

Synopsis
template<
    class CompletionToken = with_diagnostics_t<asio::deferred_t>>
auto
async_close(
    CompletionToken&& token = {});
Description

This function does the following:

Since this function involves writing a message to the server, it can fail. Only use this function if you know that the connection is healthy and you want to cleanly close it.

If you don't call this function, the destructor or successive connects will perform a transport-layer close. This doesn't cause any resource leaks, but may cause warnings to be written to the server logs.

Handler signature

The handler signature for this operation is void(boost::mysql::error_code).

Executor

Intermediate completion handlers, as well as the final handler, are executed using token's associated executor, or this->get_executor() if the token doesn't have an associated executor.

If the final handler has an associated immediate executor, and the operation completes immediately, the final handler is dispatched to it. Otherwise, the final handler is called as if it was submitted using asio::post, and is never be called inline from within this function.


PrevUpHomeNext