Scroll to navigation

PMIX_INFO_DESTRUCT(3) OpenPMIx PMIX_INFO_DESTRUCT(3)

PMIx_Info_destruct — Release the contents of a pmix_info_t(5) <#man5-pmix-info-t>

SYNOPSIS

#include <pmix.h>
void PMIx_Info_destruct(pmix_info_t *p);


Python Syntax

No Python equivalent

INPUT PARAMETERS

•
p: Pointer to the pmix_info_t(5) <#man5-pmix-info-t> structure whose contents are to be released. The storage for the structure itself is not freed — it is assumed to belong to the caller (typically declared on the stack or embedded within another object).

DESCRIPTION

The PMIx_Info_destruct function releases any memory held by the pmix_value_t(5) <#man5-pmix-value-t> payload contained within the info structure. It does not free the pmix_info_t storage itself; that remains the responsibility of the caller.

If the info structure has been marked persistent (see PMIx_Info_persistent(3) <#man3-pmix-info-persistent>), the contained value is left untouched — a persistent info does not own its value, so its memory is deliberately not released.

PMIx_Info_destruct is the counterpart to PMIx_Info_construct(3) <#man3-pmix-info-construct>. A structure that was allocated as part of an array by PMIx_Info_create(3) <#man3-pmix-info-create> should be released with PMIx_Info_free(3) <#man3-pmix-info-free> instead, which destructs each element and frees the array storage.

RETURN VALUE

PMIx_Info_destruct returns no value (void).

NOTES

PMIx_Info_destruct is the OpenPMIx routine underlying the historical PMIX_INFO_DESTRUCT macro. That macro is retained in pmix_deprecated.h for backward compatibility and simply expands to a call to this function; new code may call either form.

See also:

PMIx_Info_construct(3) <#man3-pmix-info-construct>, PMIx_Info_create(3) <#man3-pmix-info-create>, PMIx_Info_free(3) <#man3-pmix-info-free>, PMIx_Info_persistent(3) <#man3-pmix-info-persistent>, pmix_info_t(5) <#man5-pmix-info-t>, pmix_value_t(5) <#man5-pmix-value-t>


Copyright

2014-2026, OpenPMIx Community

September 27, 2026