pub struct RedisConnectionManager { /* private fields */ }
Expand description
An r2d2::ConnectionManager
for redis::Client
s.
§Example
extern crate r2d2;
extern crate r2d2_redis;
extern crate redis;
use std::default::Default;
use std::ops::Deref;
use std::thread;
use r2d2_redis::RedisConnectionManager;
fn main() {
let config = Default::default();
let manager = RedisConnectionManager::new("redis://localhost").unwrap();
let pool = r2d2::Pool::new(config, manager).unwrap();
let mut handles = vec![];
for _i in 0..10i32 {
let pool = pool.clone();
handles.push(thread::spawn(move || {
let conn = pool.get().unwrap();
let reply = redis::cmd("PING").query::<String>(conn.deref()).unwrap();
// Alternatively, without deref():
// let reply = redis::cmd("PING").query::<String>(&*conn).unwrap();
assert_eq!("PONG", reply);
}));
}
for h in handles {
h.join().unwrap();
}
}
Implementations§
Source§impl RedisConnectionManager
impl RedisConnectionManager
Sourcepub fn new<T: IntoConnectionInfo>(
params: T,
) -> Result<RedisConnectionManager, RedisError>
pub fn new<T: IntoConnectionInfo>( params: T, ) -> Result<RedisConnectionManager, RedisError>
Creates a new RedisConnectionManager
.
See redis::Client::open
for a description of the parameter
types.
Trait Implementations§
Source§impl Debug for RedisConnectionManager
impl Debug for RedisConnectionManager
Source§impl ManageConnection for RedisConnectionManager
impl ManageConnection for RedisConnectionManager
Source§type Connection = Connection
type Connection = Connection
The connection type this manager deals with.
Source§fn is_valid(&self, conn: &mut Connection) -> Result<(), Error>
fn is_valid(&self, conn: &mut Connection) -> Result<(), Error>
Determines if the connection is still connected to the database. Read more
Source§fn has_broken(&self, _conn: &mut Connection) -> bool
fn has_broken(&self, _conn: &mut Connection) -> bool
Quickly determines if the connection is no longer usable. Read more
Auto Trait Implementations§
impl Freeze for RedisConnectionManager
impl RefUnwindSafe for RedisConnectionManager
impl Send for RedisConnectionManager
impl Sync for RedisConnectionManager
impl Unpin for RedisConnectionManager
impl UnwindSafe for RedisConnectionManager
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more