Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Выполняет неблокирующее получение сообщения, сопоставленного MPI_Mprobe или MPI_Improbe.
Синтаксис
int MPIAPI MPI_Imrecv(
_Out_ void *buf,
_In_ int count,
_In_ MPI_Datatype datatype,
_Inout_ MPI_Message *message,
_Out_ MPI_Request *request
);
Параметры
buf [out]
Указатель на адрес буфера получения.count [in]
Количество элементов типа данных в buf.datatype [in]
Тип данных MPI элементов в buf.message [in, out]
Содержит указатель на сообщение.request [out]
При возврате содержит указатель на дескриптор MPI_REQUEST , представляющий операцию связи.
Возвращаемое значение
Возвращает MPI_SUCCESS при успешном выполнении. В противном случае возвращаемое значение представляет собой код ошибки.
В Fortran возвращаемое значение хранится в параметре IERROR .
Fortran
MPI_IMRECV(BUF, COUNT, DATATYPE, MESSAGE, REQUEST, IERROR)
<type> BUF(*)
INTEGER COUNT, DATATYPE, MESSAGE, REQUEST, IERROR
Комментарии
Эта функция является неблокирующим вариантом MPI_Mrecv и запускает неблокирующее получение сопоставленного сообщения. Семантика завершения аналогична MPI_Irecv.
При возвращении из этой функции для дескриптора сообщения устанавливается значение MPI_MESSAGE_NULL.
Если эта функция вызывается с MPI_MESSAGE_NO_PROC в качестве аргумента сообщения, вызов возвращается немедленно с объектом запроса, который, после завершения, возвращает объект состояния с исходным = MPI_PROC_NULL, тегом = MPI_ANY_TAG и count = 0, как если бы был получен от MPI_PROC_NULL. Вызов этой функции с MPI_MESSAGE_NULL является ошибочным.
Требования
Продукт |
Microsoft MPI версии 6 |
Заголовок |
Mpi.h; Mpif.h |
Библиотека |
Msmpi.lib |
DLL |
Msmpi.dll |