Skip to main content

GC_register_long_link

Function GC_register_long_link 

Source
pub unsafe extern "C" fn GC_register_long_link(
    arg1: *mut *mut c_void,
    arg2: *const c_void,
) -> c_int
Expand description

Similar to GC_general_register_disappearing_link but *link only gets cleared when obj becomes truly inaccessible. An object becomes truly inaccessible when it can no longer be resurrected from its finalizer (e.g. by assigning itself to a pointer traceable from root). This can be used to implement “long” weak pointers easily and safely.