Advertisement
Guest User

Untitled

a guest
Jul 12th, 2024
23
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.75 KB | Source Code | 0 0
  1. use criterion::{black_box, criterion_group, criterion_main, Criterion};
  2.  
  3. pub fn rc(c: &mut Criterion) {
  4. use std::rc::Rc;
  5. let rc = Rc::new(64);
  6. c.bench_function("rc", |b| b.iter(|| (black_box(rc.clone()))));
  7. }
  8. pub fn arc(c: &mut Criterion) {
  9. use std::sync::Arc;
  10. let arc = Arc::new(64);
  11. c.bench_function("arc", |b| b.iter(|| (black_box(arc.clone()))));
  12. }
  13. pub fn arr(c: &mut Criterion) {
  14. let arr = [0_u8; 1024];
  15. c.bench_function("arr", |b| b.iter(|| (black_box(arr.clone()))));
  16. }
  17. pub fn bstr(c: &mut Criterion) {
  18. let bstr: Box<str> = black_box(black_box("Hi").into());
  19. c.bench_function("bstr", |b| b.iter(|| (black_box(bstr.clone()))));
  20. }
  21. criterion_group!(benches, rc, arc, arr, bstr);
  22. criterion_main!(benches);
  23.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement