wvwwvwwv / scalable-concurrent-containers

High performance containers and utilities for concurrent and asynchronous programming
Apache License 2.0
285 stars 14 forks source link

Request: standalone EBR implementation #131

Closed loyd closed 3 months ago

loyd commented 4 months ago

I appreciate your implementation of EBR and plan to incorporate it into future projects, specifically for implementing a slab structure. However, I have concerns regarding the scc dependency potentially becoming heavy. Consequently, I would prefer to rely on a more lightweight crate.

Additionally, segregating EBR into its own dedicated crate would help scc's evolution, including potential breaking changes (e.g. https://github.com/wvwwvwwv/scalable-concurrent-containers/issues/105). This separation allows for the coexistence of multiple scc versions (such as v2, v3, etc.) within the same project, each using the same collectors. A similar modular approach is already used across the ecosystem (e.g., signal_hook and signal_hook_registry crates).

So, what do you think about publishing scc-ebr and moving scc to use it?

wvwwvwwv commented 4 months ago

Looks like a great idea! Right now, I’m way too busy to make big changes to the crate, but I’ll definitely do this in the long run.

wvwwvwwv commented 3 months ago

FYI: published https://crates.io/crates/sdd / source: https://github.com/wvwwvwwv/scalable-delayed-dealloc

=> This will be integrated into it next month.

wvwwvwwv commented 3 months ago

https://crates.io/crates/sdd

loyd commented 3 months ago

Thanks a lot!