blob: 4cfaacdc4bc9e5d5e07d3aa17495701dd3ed6e29 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
|
#![feature(test)]
extern crate thread_local;
extern crate test;
use thread_local::{ThreadLocal, CachedThreadLocal};
#[bench]
fn thread_local(b: &mut test::Bencher) {
let local = ThreadLocal::new();
b.iter(|| { let _: &i32 = local.get_or(|| Box::new(0)); });
}
#[bench]
fn cached_thread_local(b: &mut test::Bencher) {
let local = CachedThreadLocal::new();
b.iter(|| { let _: &i32 = local.get_or(|| Box::new(0)); });
}
|