Not
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Skapar och returnerar en användardefinierad begäran.
Syntax
int MPIAPI MPI_Grequest_start(
_In_ MPI_Grequest_query_function *query_fn,
_In_ MPI_Grequest_free_function *free_fn,
_In_ MPI_Grequest_cancel_function *cancel_fn,
_In_opt_ void *extra_state,
_Out_ MPI_Request *request
);
Parametrar
query_fn [in]
Återanropsfunktionen anropas när begärans status efterfrågas.free_fn [in]
Återanropsfunktionen anropas när begäran frigörs.cancel_fn [in]
Återanropsfunktionen anropas när begäran avbryts.extra_state [in, valfritt]
Extra tillstånd som skickas till funktionerna ovan.begäran [ut]
Generaliserad begäran.
Returvärde
Returnerar MPI_SUCCESS vid lyckat resultat. Annars är returvärdet en felkod.
I Fortran lagras returvärdet i parametern IERROR .
Fortran
MPI_GREQUEST_START(QUERY_FN, FREE_FN, CANCEL_FN, EXTRA_STATE, REQUEST, IERROR)
INTEGER REQUEST, IERROR
EXTERNAL QUERY_FN, FREE_FN, CANCEL_FN
INTEGER (KIND=MPI_ADDRESS_KIND) EXTRA_STATE
Kommentarer
Returvärdena från återanropsfunktionerna måste vara en giltig MPI-felkod eller -klass. Det här värdet kan antingen vara returvärdet från valfri MPI-rutin (med ett undantag som anges nedan) eller någon av MPI-felklasserna. För portabla program kan MPI_ERR_OTHER användas. om du vill ange mer specifik information skapar du en ny MPI-felklass eller kod med MPI_Add_error_class eller MPI_Add_error_code och returnerar det värdet.
MPI-standarden är inte tydlig med returvärdena från återanropsrutinerna. Det finns dock anteckningar i standarden som innebär att dessa är MPI-felkoder. Till exempel kräver sidorna 169 rad 46 till sida 170, rad 1 att free_fn returnerar en MPI-felkod som kan användas i MPI-slutförandefunktionerna när de returnerar MPI_ERR_IN_STATUS.
Det enda specialfallet är felvärdet som returneras av MPI_Comm_dup när attributets återanropsrutin returnerar ett fel. MPI-standarden är inte tydlig med vilka värden som kan användas för att indikera en felretur. Dessutom använde Intel MPI-testsviten värden som inte var noll för att indikera fel, och förväntade sig att dessa värden skulle returneras av MPI_Comm_dup när attributrutinerna påträffade ett fel. Sådana felvärden kanske inte är giltiga MPI-felkoder eller -klasser. På grund av detta är det användarens ansvar att antingen använda giltiga MPI-felkoder i gengäld från attributåteranropen, om dessa felkoder ska returneras av ett generaliserat begärandeåteranrop eller att identifiera och konvertera dessa felkoder till giltiga MPI-felkoder (kom ihåg att MPI-felklasser är giltiga felkoder).
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 |
Bibliotek |
Msmpi.lib |
DLL |
Msmpi.dll |