Brief Announcement: Hazard Pointer Protection of Structures with Immutable Links

1Citations
Citations of this article
5Readers
Mendeley users who have this article in their library.
Get full text

Abstract

The hazard pointer method [4] for safe reclamation is capable of protecting individual dynamic objects, including individual nodes of linked structures. However, on its own, it does not protect the descendants of protected nodes for unconditional traversal. We present a new algorithm that extends the hazard pointer algorithm to support unconditional traversal though immutable links of acyclic structures. It has an important added advantage of allowing the reclamation of nodes at any depth with their ancestors in the same pass over hazard pointers. Achieving these advantages does not incur any extra computing cost in protection operations, which are the common case. A counter is added to each object for holding the number of inbound immutable links. Such counters are updated when setting and clearing immutable links, which can happen at most once per link in the lifetime of an object. The algorithm is implemented and used in the Facebook Folly open-source C++ library [1].

Cite

CITATION STYLE

APA

Michael, M. M. (2020). Brief Announcement: Hazard Pointer Protection of Structures with Immutable Links. In Proceedings of the Annual ACM Symposium on Principles of Distributed Computing (pp. 230–232). Association for Computing Machinery. https://doi.org/10.1145/3382734.3405738

Register to see more suggestions

Mendeley helps you to discover research relevant for your work.

Already have an account?

Save time finding and organizing research with Mendeley

Sign up for free