#epoch #multi-threaded #performance #reclamation #garbage

ebr

simple epoch-based reclamation with low cacheline ping-pong

10 releases

0.2.2 Mar 19, 2023
0.2.1 Nov 16, 2022
0.1.40 Nov 16, 2022
0.0.5 May 17, 2022
0.0.3 Jul 20, 2021

#208 in Concurrency

Download history 38/week @ 2023-02-05 43/week @ 2023-02-12 39/week @ 2023-02-19 7/week @ 2023-02-26 15/week @ 2023-03-05 16/week @ 2023-03-12 35/week @ 2023-03-19 38/week @ 2023-03-26 10/week @ 2023-04-02 31/week @ 2023-04-09 10/week @ 2023-04-16 26/week @ 2023-04-23 28/week @ 2023-04-30 41/week @ 2023-05-07 32/week @ 2023-05-14 17/week @ 2023-05-21

126 downloads per month
Used in 2 crates (via concurrent-map)

GPL-3.0 license

17KB
220 lines

ebr

a simple epoch-based reclamation (EBR) library with low cacheline ping-pong.

use ebr::Ebr;

let ebr: Ebr<Box<u64>> = Ebr::default();

let mut guard = ebr.pin();

guard.defer_drop(Box::new(1));

lib.rs:

Simple, CPU cache-friendly epoch-based reclamation (EBR).

use ebr::Ebr;

let ebr: Ebr<Box<u64>> = Ebr::default();

let mut guard = ebr.pin();

guard.defer_drop(Box::new(1));

Dependencies

~16KB