18.2.142. PMIx_Proc_info_construct

PMIx_Proc_info_construct — Initialize a caller-provided pmix_proc_info_t(5) structure.

18.2.142.1. SYNOPSIS

#include <pmix.h>

void PMIx_Proc_info_construct(pmix_proc_info_t *p);

18.2.142.1.1. Python Syntax

No Python equivalent

18.2.142.2. INPUT PARAMETERS

  • p: Pointer to the pmix_proc_info_t(5) structure to be initialized. The storage for the structure itself must already exist (caller supplied, typically declared on the stack or embedded within another object).

18.2.142.3. DESCRIPTION

Initialize the memory of a pmix_proc_info_t that the caller has already allocated. The function zeroes the entire structure — clearing the embedded proc identifier, the hostname and executable_name pointers, the pid, and the exit_code — and sets the state field to PMIX_PROC_STATE_UNDEF. No heap memory is allocated.

Because PMIx_Proc_info_construct operates on caller-provided storage, it must be paired with PMIx_Proc_info_destruct(3) to release any payload (such as the hostname or executable_name strings) the structure subsequently acquires. Do not pass a constructed (as opposed to created) structure to PMIx_Proc_info_free(3), as that would attempt to free storage the library did not allocate.

18.2.142.4. RETURN VALUE

PMIx_Proc_info_construct returns no value (void).

18.2.142.5. NOTES

PMIx_Proc_info_construct is an OpenPMIx convenience routine. The corresponding PMIX_PROC_INFO_CONSTRUCT macro is implemented as a direct call to this function.

18.2.142.6. EXAMPLES

Construct a structure:

pmix_proc_info_t pinfo;

PMIx_Proc_info_construct(&pinfo);