Deadpool is a dead simple async pool for connections and objects of any type.
This crate implements a deadpool
manager for tokio-postgres
and also provides a statement
cache by wrapping tokio_postgres::Client
and tokio_postgres::Transaction
.
```rust use std::env;
use deadpoolpostgres::{Manager, Pool}; use tokiopostgres::{Config, NoTls};
async fn main() { let mut cfg = Config::new(); cfg.host("/var/run/postgresql"); cfg.user(env::var("USER").unwrap().asstr()); cfg.dbname("deadpool"); let mgr = Manager::new(cfg, tokiopostgres::NoTls); let pool = Pool::new(mgr, 16); for i in 1..10 { let mut client = pool.get().await.unwrap(); let stmt = client.prepare("SELECT 1 + $1").await.unwrap(); let rows = client.query(&stmt, &[&i]).await.unwrap(); let value: i32 = rows[0].get(0); assert_eq!(value, i + 1); } } ```
Licensed under either of
at your option.