{
"$type": "site.standard.document",
"bskyPostRef": {
"cid": "bafyreiesacq2wtqqsijukeu2wtb5tgovovzssahlyzjr2aghmkq34xcffe",
"uri": "at://did:plc:ivbknywyskln22er3nkssdhl/app.bsky.feed.post/3mgg4tfmsrop2"
},
"path": "/t/idea-lock-free-std-collection/24056#post_8",
"publishedAt": "2026-03-06T14:03:44.000Z",
"site": "https://internals.rust-lang.org",
"textContent": "The problem with lock-free data structures is that they typically require lock-free memory reclamation, unless they have some very specific access constraints (cf. `tokio::mpsc`). Java does not have this problem because of GC. There is generally no single memory reclamation scheme that is \"optimal\" for all data structures, either. Also, using a single global memory reclaimer (like `crossbeam-epoch`) leads to simpler data structure APIs, but is not ideal for performance, especially if used by different lock-free data structure instances that are logically unrelated.\n\nSo `std` would not only have to provide the lock-free data structures but also either a single memory reclamation mechanism implementation used by all or design something like a generic trait-based reclamation API, which is not really something that has been seriously attempted thus far. Given that Rust does not even have a stable Allocator API (which is basically a solved issue) I seriously doubt anyone would want to commit to something like this.",
"title": "Idea : Lock Free STD Collection"
}