MPI_Grequest_query_function återanropsfunktion
MPI_Grequest_query_function är en platshållare för det programdefinierade funktionsnamnet.
Syntax
int MPI_Grequest_query_function(
_In_opt_ void *extra_state,
_Out_ MPI_Status *status
);
Parametrar
extra_state [in, valfritt]
Extra tillstånd.status [out]
MPI-statusobjekt.
Returvärde
Alla återanropsfunktioner returnerar en felkod. Koden skickas tillbaka och hanteras efter behov för felkoden av MPI-funktionen som anropade motringningsfunktionen. Om felkoder till exempel returneras returneras felkoden som returneras av återanropsfunktionen av den MPI-funktion som anropade återanropsfunktionen. När det gäller en MPI_{Wait|Test}alla anrop som anropar både query_fn och free_fn returnerar MPI-anropet felkoden som returnerades av det senaste återanropet, nämligen free_fn. Om en eller flera av begäranden i ett anrop till MPI_{Wait|Test}{some|all} misslyckades och MPI-anropet returnerar MPI_ERR_IN_STATUS. I så fall, om MPI-anropet skickades en matris med statusar, returnerar MPI i var och en av de statusar som motsvarar en slutförd generaliserad begäran felkoden som returneras av motsvarande anrop av dess free_fn återanropsfunktion. Men om MPI-funktionen skickades MPI_STATUSES_IGNORE kommer de enskilda felkoder som returneras av varje återanropsfunktion att gå förlorade.
Fortran
SUBROUTINE GREQUEST_QUERY_FUNCTION(EXTRA_STATE, STATUS, IERROR)
INTEGER STATUS(MPI_STATUS_SIZE), IERROR
INTEGER(KIND=MPI_ADDRESS_KIND) EXTRA_STATE
Kommentarer
Funktionen query_fn beräknar den status som ska returneras för den generaliserade begäran. Statusen innehåller även information om lyckad/misslyckad annullering av begäran (resultat som ska returneras av MPI_Test_cancelled).
Återanropet query_fn anropas av MPI_{Wait|Test}{any|some|all} -anrop som slutförde den generaliserade begäran som är associerad med det här återanropet. Återanropsfunktionen anropas också av anrop till MPI_Request_get_status, om begäran är slutförd när anropet inträffar. I båda fallen skickas motringningen en referens till motsvarande statusvariabel som användaren skickar till MPI-anropet. statusen som anges av återanropsfunktionen returneras av MPI-anropet. Om användaren angav MPI_STATUS_IGNORE eller MPI_STATUSES_IGNORE till MPI-funktionen som gör att query_fn anropas skickar MPI ett giltigt statusobjekt till query_fn och den här statusen ignoreras när återanropsfunktionen returneras. Observera att query_fn anropas först när MPI_Grequest_complete anropas på begäran. det kan anropas flera gånger för samma generaliserade begäran, t.ex. om användaren anropar MPI_Request_get_status flera gånger för denna begäran. Observera också att ett anrop till MPI_{Wait|Test}{some|all} kan orsaka flera anrop av query_fn återanropsfunktioner, en för varje generaliserad begäran som slutförs av MPI-anropet. Ordningen på dessa anrop anges inte av MPI.
Krav
Produkt |
HPC Pack 2012 MS-MPI Redistributable Package, HPC Pack 2008 R2 MS-MPI Redistributable Package, HPC Pack 2008 MS-MPI Redistributable Package eller HPC Pack 2008 Client Utilities |
Huvud |
Mpi.h; Mpif.h |