18.2.101. PMIx_Info_list_release

PMIx_Info_list_release — Free an opaque pmix_info_t(5) list and all of its entries

18.2.101.1. SYNOPSIS

#include <pmix.h>

void PMIx_Info_list_release(void *ptr);

18.2.101.1.1. Python Syntax

No Python equivalent

18.2.101.2. INPUT PARAMETERS

18.2.101.3. DESCRIPTION

Release the list identified by ptr. All pmix_info_t entries on the list are destructed — freeing the data each holds — and the backing list object allocated by PMIx_Info_list_start(3) is itself freed. After this call the handle is no longer valid and must not be reused.

This is the terminal step of the list-building workflow. It is safe (and expected) to call PMIx_Info_list_release after PMIx_Info_list_convert(3), because the array produced by that conversion is an independent deep copy that is unaffected by releasing the list.

Note that entries added with PMIx_Info_list_insert(3) were stored by reference and marked persistent; their payload is not freed by this call, and remains the caller’s responsibility.

18.2.101.4. RETURN VALUE

PMIx_Info_list_release returns no value (void).

18.2.101.5. NOTES

Every handle obtained from PMIx_Info_list_start(3) must be released exactly once to avoid leaking memory.