mirror of
https://github.com/isar/rusqlite.git
synced 2024-11-27 12:01:37 +08:00
24 lines
606 B
Rust
24 lines
606 B
Rust
|
#![feature(test)]
|
||
|
extern crate test;
|
||
|
|
||
|
extern crate rusqlite;
|
||
|
|
||
|
use rusqlite::Connection;
|
||
|
use rusqlite::cache::StatementCache;
|
||
|
use test::Bencher;
|
||
|
|
||
|
#[bench]
|
||
|
fn bench_no_cache(b: &mut Bencher) {
|
||
|
let db = Connection::open_in_memory().unwrap();
|
||
|
let sql = "SELECT 1, 'test', 3.14 UNION SELECT 2, 'exp', 2.71";
|
||
|
b.iter(|| db.prepare(sql).unwrap());
|
||
|
}
|
||
|
|
||
|
#[bench]
|
||
|
fn bench_cache(b: &mut Bencher) {
|
||
|
let db = Connection::open_in_memory().unwrap();
|
||
|
let cache = StatementCache::new(&db, 15);
|
||
|
let sql = "SELECT 1, 'test', 3.14 UNION SELECT 2, 'exp', 2.71";
|
||
|
b.iter(|| cache.get(sql).unwrap());
|
||
|
}
|