[−][src]Function mun_runtime::gc::mun_gc_root
#[no_mangle]pub unsafe extern "C" fn mun_gc_root(
handle: RuntimeHandle,
obj: GcPtr
) -> ErrorHandle
Roots the specified obj
, which keeps it and objects it references alive. Objects marked as
root, must call mun_gc_unroot
before they can be collected. An object can be rooted multiple
times, but you must make sure to call mun_gc_unroot
an equal number of times before the
object can be collected. If successful, obj
has been rooted, otherwise a non-zero error handle
is returned.
If a non-zero error handle is returned, it must be manually destructed using
[mun_error_destroy
].
Safety
This function receives raw pointers as parameters. If any of the arguments is a null pointer, an error will be returned. Passing pointers to invalid data, will lead to undefined behavior.