MPI_Mrecv función
Realiza una recepción de bloqueo para un mensaje coincidente con MPI_Mprobe o MPI_Improbe.
Sintaxis
int MPIAPI MPI_Mrecv(
_Out_ void *buf,
_In_ int count,
_In_ MPI_Datatype datatype,
_Inout_ MPI_Message *message,
_Out_ MPI_Status *status
);
Parámetros
buf [out]
Puntero a la dirección del búfer de recepción.count [in]
Número de elementos de tipo de datos en buf.datatype [in]
El tipo de datos MPI de los elementos de la matriz de búfer.message [in, out]
Contiene un puntero al mensaje.status [out]
En la devolución, contiene un puntero a una estructura MPI_Status donde se almacena información sobre el mensaje.
Valor devuelto
Devuelve MPI_SUCCESS si se realiza correctamente. De lo contrario, el valor devuelto es un código de error.
En Fortran, el valor devuelto se almacena en el parámetro IERROR .
Fortran
MPI_MRECV(BUF, COUNT, DATATYPE, MESSAGE, STATUS, IERROR)
<type> BUF(*)
INTEGER COUNT, DATATYPE, MESSAGE, STATUS(MPI_STATUS_SIZE), IERROR
Comentarios
Esta función recibe un mensaje coincidente con una operación de sondeo coincidente. El búfer de recepción consta del almacenamiento que contiene los elementos consecutivos del tipo especificado por el tipo de datos, empezando por address buf. La longitud del mensaje recibido debe ser menor o igual que la longitud del búfer de recepción. Se produce un error de desbordamiento si no caben todos los datos entrantes, sin truncamiento, en el búfer de recepción.
Si el mensaje es más corto que el búfer de recepción, solo se modifican las ubicaciones correspondientes al mensaje (más corto).
A partir de esta función, el identificador de mensaje se establece en MPI_MESSAGE_NULL. Todos los errores que se producen durante la ejecución de esta operación se controlan según el conjunto de controladores de errores para el comunicador usado en la llamada de sondeo coincidente que generó el identificador de mensaje.
Requisitos
Producto |
Microsoft MPI v6 |
Encabezado |
Mpi.h; Mpif.h |
Biblioteca |
Msmpi.lib |
Archivo DLL |
Msmpi.dll |