33 releases (11 stable)

1.7.1 Mar 23, 2024
1.6.0 Dec 31, 2022
1.5.1 Jul 30, 2022
1.5.0 Nov 15, 2021
0.3.0 Jul 23, 2018

#2 in Memory management

Download history 806900/week @ 2024-07-27 784031/week @ 2024-08-03 811569/week @ 2024-08-10 815142/week @ 2024-08-17 820890/week @ 2024-08-24 773630/week @ 2024-08-31 840290/week @ 2024-09-07 787596/week @ 2024-09-14 877517/week @ 2024-09-21 850487/week @ 2024-09-28 895213/week @ 2024-10-05 895155/week @ 2024-10-12 918267/week @ 2024-10-19 873040/week @ 2024-10-26 900228/week @ 2024-11-02 872201/week @ 2024-11-09

3,720,191 downloads per month
Used in 2,403 crates (283 directly)

MIT/Apache

185KB
2K SLoC

ArcSwap

Actions Status codecov docs

This provides something similar to what RwLock<Arc<T>> is or what Atomic<Arc<T>> would be if it existed, optimized for read-mostly write-seldom scenarios, with consistent performance characteristics.

Read the documentation before using.

Rust version policy

The 1. version will build on any edition 2018 capable compiler. This does not include:

  • Tests. Tests build and run on recent compilers, mostly because of dependencies.
  • Additional feature flags. Most feature flags are guaranteed to build since the version they are introduced. Experimental features are without any guarantees.

License

Licensed under either of

at your option.

Contribution

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.

Dependencies