rclite 0.1.2

The small reference counting solution for Rust
Documentation
rclite-0.1.2 has been yanked.

RcLite: The small reference counting solution for Rust

Crates.io Documentation MIT licensed Apache 2 licensed

RcLite is a lightweight reference-counting solution for Rust that serves as an alternative to the standard library's reference-counting. It offers both multi-threaded and single-threaded reference counting options with improved performance and reduced memory overhead, boasting a 75% decrease in memory usage compared to the standard reference counting method. RcLite is a suitable option when weak references are not necessary and optimizing for performance and memory usage is a priority.

Why use RcLite?

  • It's faster and smaller
  • Uses less memory
  • It is a drop-in replacement for standard library Arc and Rc without weak reference feature
  • It supports no_std with extern alloc

Why not use RcLite?

  • It does not provide weak references
  • With RcLite in 64-bit systems, you only can have 4,294,967,296 - 256 live references to an object. if you need to have 18,446,744,073,709,551,616 live references to an object, use the standard library. In other systems with smaller pointer sizes like 32-bit, you will have usize::MAX live references limitation that is the same as the standard library.

Comparison

rclite::Arc std::sync::Arc
Overhead in 64-bit systems 4 bytes 16 bytes
Overhead in 32-bit systems 4 bytes 8 bytes
Overhead in 16-bit systems 2 bytes 4 bytes
Weak References