1. A non-transitory, computer readable storage medium, storing program code executable on one or more processors to instantiate a dynamically sizable data structure; wherein accesses to the shared data structure are lock-free; wherein instantiation of the shared data structure does not require a known bound on the number of processes that will ever access the shared data structure; wherein the amount of storage consumed by the shared data structure is adaptive independent of any historical maximum value associated with the shared data structure; and wherein failure of a thread that accesses the shared data structure does not prevent all future reclamation of the storage consumed by the shared data structure by a non-failed thread; wherein the adaptivity of the amount of storage consumed by the shared data structure is achieved through explicit reclamation and without resorting to garbage collection.