shredder
shredder copied to clipboard
Garbage collected smart pointers for Rust
Currently it seems that allocating a Gc\ requires a whopping 4 heap allocations, of the T itself, a GcHandle, a GcData and a Lockout. There seems to be no reason...
First of all, thanks for building this crate! I found this crate is pretty great and GC types are ergonomic that I don't need to worry too much. The issue...
This is around a ~4x speedup, but required a lot of code changes. In terms of public API, only `AtomicGc` has a significant diff. (The old API would still work,...
I was wondering if there was some sort of equivalent to `Arc::ptr_eq` for `Gc`. I've been converting a project with lots of `Arc` references over to `Gc` and there are...
This would close #21 - allowing Shredder to be used in `no-std` environments. This uses the [no-std-compat](https://crates.io/crates/no-std-compat) crate to provide an easy transition. Mutexes and RwLocks are provided by the...
I have a use-case where it would be useful to have a weak pointer to a `Gc` pointer (basically, a cache of Gc'd items). I don't think it would be...
I am using `cargo-valgrind` to get these results. I have created a brand new project using `shreder = "0.1.2"`, and I am using this main function: ```rust fn main() {...
We should implement a way to write work semi unsafely with Gc’s when you need to
It'd be cool if there was a guard you could hold to prevent collection, something like: ``` fn prevent_collection() -> PreventCollectionGuard {...} struct PreventCollectionGuard {...} ``` This may be useful...