# Reference

## boost::redis::basic_connection

A SSL connection to the Redis server.

### Synopsis

Declared in `<boost/redis/connection.hpp>`

    template<class Executor>
    class basic_connection;

### Types

Name | Description
`rebind_executor` | Rebinds the socket type to another executor.
`next_layer_type` | (Deprecated) Type of the next layer
`executor_type` | The type of the executor associated to this object.

### Member Functions

Name | Description
`basic_connection` [constructor] | Constructors
`get_executor` | Returns the associated executor.
`async_run` | `async_run` overloads
`async_receive` | Receives server side pushes asynchronously.
`receive` | Receives server pushes synchronously without blocking.
`async_exec` | Executes commands on the Redis server asynchronously.
`cancel` | Cancel operations.
`will_reconnect` | Returns true if the connection will try to reconnect if an error is encountered.
`get_ssl_context` | (Deprecated) Returns the ssl context.
`reset_stream` | (Deprecated) Resets the underlying stream.
`next_layer` | (Deprecated) Returns a reference to the next layer.
`set_receive_response` | Sets the response object of `async_receive` operations.
`get_usage` | Returns connection usage information.

### Friends

Name | Description
`boost::redis::connection` | A basic_connection that type erases the executor.
`boost::redis::detail::check_timeout_op` |
`boost::redis::detail::run_op` |
`boost::redis::detail::ping_op` |
`boost::redis::detail::hello_op` |
`boost::redis::detail::exec_op` |
`boost::redis::detail::writer_op` |
`boost::redis::detail::reader_op` |

### Description

This class keeps a healthy connection to the Redis instance where commands can be sent at any time. For more details, please see the documentation of each individual function.

### Template Parameters

Name | Description
Executor | The executor type used to create any required I/O objects.

Created with MrDocs