digitalmars.D.learn - reference counting resources but NOT memory
Tove <tove fransson.se> writes:
Is there any elegant/smart solution to reference counting resources without ever freeing any objects? When the ref hits 0 it should free some other resource that isn't memory... Resource resources; resources.inc; // 1 ref - 0->1 transition enable some feature resources.dec; // 0 ref - 1->0 transition disable some feature resources.inc; // 1 ref - instantly ready to be used again without any alloc/free Maybe it's best to use normal constructor/destructor with some arena memory allocator that never actually frees anything? Must be a common problem, anyone got experience with a good design?
rikki cattermole <rikki cattermole.co.nz> writes:
What you are describing sounds like regular reference counting. All resources (i.e. windows) are pinned somewhere in memory. Its just that you have to use special API's to destroy them rather than free.