Scroll to navigation

PMIX_VALUE_FREE(3) OpenPMIx PMIX_VALUE_FREE(3)

PMIx_Value_free — Release an array of pmix_value_t(5) <#man5-pmix-value-t> structures allocated by PMIx_Value_create(3) <#man3-pmix-value-create>.

SYNOPSIS

#include <pmix.h>
void PMIx_Value_free(pmix_value_t *v, size_t n);


Python Syntax

No Python equivalent

INPUT PARAMETERS

  • v: Pointer to the array of pmix_value_t(5) <#man5-pmix-value-t> structures to be released.
  • n: Number of structures in the array.

DESCRIPTION

Release an array of pmix_value_t(5) <#man5-pmix-value-t> structures that was allocated by PMIx_Value_create(3) <#man3-pmix-value-create>. For each of the n elements, the routine first destructs the element’s contents — freeing any heap memory referenced by its payload, exactly as PMIx_Value_destruct(3) <#man3-pmix-value-destruct> does — and then frees the array storage itself.

If v is NULL the routine returns immediately. The caller must supply the same count n that was passed to PMIx_Value_create(3) <#man3-pmix-value-create>.

Do not use PMIx_Value_free on a value whose storage the caller supplied (a stack or embedded pmix_value_t(5) <#man5-pmix-value-t>); for those, use PMIx_Value_destruct(3) <#man3-pmix-value-destruct>, which releases the contents without attempting to free the structure storage.

RETURN VALUE

PMIx_Value_free returns no value (void).

NOTES

PMIx_Value_free is an OpenPMIx convenience routine. The corresponding macro-style interface for this operation is PMIX_VALUE_FREE.

See also:

PMIx_Value_create(3) <#man3-pmix-value-create>, PMIx_Value_construct(3) <#man3-pmix-value-construct>, PMIx_Value_destruct(3) <#man3-pmix-value-destruct>, PMIx_Value_load(3) <#man3-pmix-value-load>, PMIx_Value_xfer(3) <#man3-pmix-value-xfer>, pmix_value_t(5) <#man5-pmix-value-t>


Copyright

2014-2026, OpenPMIx Community

September 27, 2026