Skip to main content

Crate fuchsia_rcu

Crate fuchsia_rcu 

Source

Modules§

subtle

Structs§

RcuArc
A version of crate::RcuOptionArc which does not require T: RcuDroppable in exchange for some extra atomic checking on reads.
RcuBox
An RCU (Read-Copy-Update) wrapper around a Box.
RcuDroppableArc
An RCU (Read-Copy-Update) wrapper around an Arc for types implementing RcuDroppable.
RcuOptionArc
An RCU (Read-Copy-Update) wrapper around Option<Arc<T>>.
RcuOptionBox
An RCU (Read-Copy-Update) wrapper around Option<Box>.
RcuReadGuard
A read guard for an object managed by the RCU state machine.
RcuReadScope
A scope that holds a read lock on the RCU state machine.
RcuThreadRegistration
An RAII guard that keeps the current thread registered with RCU and RSEQ.
RcuWeak
An RCU (Read-Copy-Update) wrapper around a Weak pointer.

Traits§

RcuDroppable
Marker trait for types that are safe to be dropped on the RCU worker / drop execution path.

Functions§

rcu_advancer_wait_for_work
Blocks the calling advancer thread until RCU callbacks are scheduled.
rcu_advancer_wake
Wake the rcu advancer thread if it’s sleeping.
rcu_drop
Schedule the object to be dropped after all in-flight read operations have completed.
rcu_run_callbacks
Advances the RCU state machine if work is pending and runs ready callbacks.
rcu_synchronize
Block until all in-flight read operations have completed for callbacks registered prior to this call.
register_thread
Registers the current thread for RCU and RSEQ.
unregister_thread
Unregisters the current thread from RCU and RSEQ.
with_thread_block_counters
Exposes the thread-local counters for RCU stall detection.

Derive Macros§

RcuDroppable
Proc macro to allow safe implementation of RcuDroppable if all of a types fields are RcuDroppable.