liburcu is a userspace RCU (read-copy-update) library. This data
synchronization library provides read-side access which scales linearly
with the number of cores. It does so by allowing multiples copies of a
given data structure to live at the same time, and by monitoring the
data structure accesses to detect grace periods after which memory
reclamation is possible.

Homepage:
http://lttng.org/urcu
