Purpose
Marks a communicator attribute key for deallocation.
C synopsis
#include <mpi.h> int MPI_Keyval_free(int *keyval);
FORTRAN synopsis
include 'mpif.h' or use mpi MPI_KEYVAL_FREE(INTEGER KEYVAL,INTEGER IERROR)
Parameters
Description
This subroutine sets keyval to MPI_KEYVAL_INVALID and marks the attribute key for deallocation. You can free an attribute key that is in use because the actual deallocation occurs only when all active references to it are complete. These references, however, need to be explicitly freed. Use calls to MPI_ATTR_DELETE to free one attribute instance. To free all attribute instances associated with a communicator, use MPI_COMM_FREE.
Notes
MPI_COMM_FREE_KEYVAL supersedes MPI_KEYVAL_FREE.
MPI_KEYVAL_FREE does not interoperate with MPI_COMM_FREE_KEYVAL. The FORTRAN bindings for MPI-1 caching functions presume that an attribute is an INTEGER. The MPI-2 caching bindings use INTEGER (KIND=MPI_ADDRESS_KIND). In an MPI implementation that uses 64-bit addresses and 32-bit INTEGERS, the two formats would be incompatible.
Errors
Related information