Struct redis::Connection [−][src]
pub struct Connection { /* fields omitted */ }
Expand description
Represents a stateful redis TCP connection.
Implementations
A connection is an object that represents a single redis connection. It provides basic support for sending encoded commands into a redis connection and to read a response from it. It’s bound to a single database and can only be created from the client.
You generally do not much with this object other than passing it to
Cmd
objects.
Sends an already encoded (packed) command into the TCP socket and
does not read a response. This is useful for commands like
MONITOR
which yield multiple items. This needs to be used with
care because it changes the state of the connection.
Fetches a single response from the connection. This is useful
if used in combination with send_packed_command
.
Sets the write timeout for the connection.
If the provided value is None
, then send_packed_command
call will
block indefinitely. It is an error to pass the zero Duration
to this
method.
Sets the read timeout for the connection.
If the provided value is None
, then recv_response
call will
block indefinitely. It is an error to pass the zero Duration
to this
method.
Trait Implementations
Sends an already encoded (packed) command into the TCP socket and reads the single response from it. Read more
fn req_packed_commands(
&mut self,
cmd: &[u8],
offset: usize,
count: usize
) -> RedisResult<Vec<Value>>
fn req_packed_commands(
&mut self,
cmd: &[u8],
offset: usize,
count: usize
) -> RedisResult<Vec<Value>>
Sends multiple already encoded (packed) command into the TCP socket
and reads count
responses from it. This is used to implement
pipelining. Read more
Returns the database this connection is bound to. Note that this information might be unreliable because it’s initially cached and also might be incorrect if the connection like object is not actually connected. Read more
Check that all connections it has are available (PING
internally).
Sends a Cmd into the TCP socket and reads a single response from it.
fn subscribe<C, F, U>(&mut self, channels: C, func: F) -> RedisResult<U> where
F: FnMut(Msg) -> ControlFlow<U>,
C: ToRedisArgs,
fn subscribe<C, F, U>(&mut self, channels: C, func: F) -> RedisResult<U> where
F: FnMut(Msg) -> ControlFlow<U>,
C: ToRedisArgs,
Subscribe to a list of channels using SUBSCRIBE and run the provided closure for each message received. Read more
fn psubscribe<P, F, U>(&mut self, patterns: P, func: F) -> RedisResult<U> where
F: FnMut(Msg) -> ControlFlow<U>,
P: ToRedisArgs,
fn psubscribe<P, F, U>(&mut self, patterns: P, func: F) -> RedisResult<U> where
F: FnMut(Msg) -> ControlFlow<U>,
P: ToRedisArgs,
Subscribe to a list of channels using PSUBSCRIBE and run the provided closure for each message received. Read more
Auto Trait Implementations
impl !RefUnwindSafe for Connection
impl Send for Connection
impl Sync for Connection
impl Unpin for Connection
impl !UnwindSafe for Connection