Conversation

😭😭😭 "It turns out that, according to Rust’s rules, leaking memory is completely safe!"
Quote Tweet
We ran into a production memory leak issue with one of our high-throughput Rust systems, check out what we found in my new post on the @onesignal blog: onesignal.com/blog/solving-m #rustlang
3
2
Replying to
Creating a non-weak reference cycle, etc. isn't memory or type unsafety which is what the unsafe feature is used to contain in Rust. It would cripple expressiveness of some things in safe code like Rc<T> and Arc<T> if leaking had to be considered memory / type unsafe.
1
2
Replying to and
Preventing reference cycles would require having very strict type bounds for Rc<T> and Arc<T> to forbid reference counted types nested within reference counted types. Cripples what you can express and would mean you need unsafe code to do something that's type and memory safe.
1
1
Replying to and
The language considering detaching stuff from scope-based ownership with reference cycles, etc. as unsafe also wouldn't prevent you having unbounded memory growth. It'd only prevent doing it in a way that wouldn't be freed as part of returning / unwinding back through main.
1
2
Show replies