On Tuesday, 16 June 2015 at 20:30:50 UTC, Etienne wrote:
On Tuesday, 16 June 2015 at 20:08:36 UTC, rsw0x wrote:
You're attempting to use GC for a problem that they don't solve because you don't have other tools to fix it. When all you have is a hammer, everything looks like a nail.

Well no, I have plenty of tools. I use a memory library that does a wide range of everything I need https://github.com/etcimon/memutils .. It's not like I'm reliant only on it, like it's my hammer and I only see nails..

It's simply easier to manage the lifetime of objects through the GC because sometimes I have them referred to as delegates at a lower level. I like having finalizers because those objects may hold thread-local containers.

A GC is not for managing an object's lifetime. There are no guarantees from the GC.


Isn't that what we'd want? To use the GC only when it's important and manual memory management at other times? What happens when you need the two and your manually allocated objects are tracked by a GC-allocated object?

The correct answer would be for the GC object to be upgraded to an RCO because the resource's lifetime is now bound to the GC object.


I think you're the one who's actually looking at everything like a nail wrt improving performance in benchmarks.

No, I'm looking at correctness and not piling hack upon hack that will fall apart at the first sneeze to the GC codebase. Performance just happens to be a side effect of correctness.

Reply via email to