18.2.37. PMIx_Fabric_deregister
PMIx_Fabric_deregister, PMIx_Fabric_deregister_nb — Deregister a
fabric object and release any information associated with it.
18.2.37.1. SYNOPSIS
#include <pmix.h>
pmix_status_t PMIx_Fabric_deregister(pmix_fabric_t *fabric);
pmix_status_t PMIx_Fabric_deregister_nb(pmix_fabric_t *fabric,
pmix_op_cbfunc_t cbfunc, void *cbdata);
18.2.37.1.1. Python Syntax
from pmix import *
foo = PMIxClient()
# ... after a successful foo.init() and foo.fabric_register() ...
rc = foo.fabric_deregister()
18.2.37.2. INPUT PARAMETERS
fabric: Address of thepmix_fabric_tstructure that was provided to PMIx_Fabric_register(3). The contents of the structure are invalidated upon return.
The non-blocking form takes two additional parameters:
cbfunc: Callback function of type pmix_op_cbfunc_t to be invoked when the deregistration completes.cbdata: Opaque pointer that is passed, unmodified, tocbfunc.
18.2.37.3. DESCRIPTION
Deregister a fabric object, providing an opportunity for the PMIx library to
clean up any information (e.g., the cost matrix) associated with it. The contents
of the provided pmix_fabric_t structure are invalidated upon return.
PMIx_Fabric_deregister is the blocking form; PMIx_Fabric_deregister_nb is
the non-blocking form.
Deregistration is a local operation that completes immediately in the reference
implementation: both forms return PMIX_SUCCESS (blocking) or
PMIX_OPERATION_SUCCEEDED (non-blocking) without invoking cbfunc. Callers
of the non-blocking form should nonetheless be prepared for cbfunc to be
invoked, as permitted by the interface contract.
18.2.37.4. RETURN VALUE
PMIX_SUCCESS— (blocking form) the fabric object was deregistered.PMIX_OPERATION_SUCCEEDED— (non-blocking form) the request was satisfied immediately andcbfuncwill not be called.
Any other negative value indicates an appropriate error condition. PMIx error
constants are defined in pmix_common.h.
18.2.37.5. NOTES
The fabric object must first have been registered with
PMIx_Fabric_register(3). After
deregistration, the fabric structure must not be used again until it is
re-registered.