| use crossbeam_epoch::{self as epoch, Owned}; |
| use crossbeam_utils::thread::scope; |
| fn single_alloc_defer_free(b: &mut Bencher) { |
| let guard = &epoch::pin(); |
| let p = Owned::new(1).into_shared(guard); |
| fn single_defer(b: &mut Bencher) { |
| let guard = &epoch::pin(); |
| fn multi_alloc_defer_free(b: &mut Bencher) { |
| const THREADS: usize = 16; |
| const STEPS: usize = 10_000; |
| let guard = &epoch::pin(); |
| let p = Owned::new(1).into_shared(guard); |
| fn multi_defer(b: &mut Bencher) { |
| const THREADS: usize = 16; |
| const STEPS: usize = 10_000; |
| let guard = &epoch::pin(); |