Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
MPI_Grequest_query_function je zástupný symbol pro název funkce definované aplikací.
Syntaxe
int MPI_Grequest_query_function(
_In_opt_ void *extra_state,
_Out_ MPI_Status *status
);
Parametry
extra_state [v, volitelné]
Stav navíc.status [out]
Objekt stavu MPI.
Vrácená hodnota
Všechny funkce zpětného volání vrátí kód chyby. Kód se předá zpět a podle potřeby s ním pracuje funkce MPI, která vyvolala funkci zpětného volání. Pokud jsou například vráceny kódy chyb, vrátí kód chyby vrácený funkcí zpětného volání funkce MPI, která vyvolala funkci zpětného volání. V případě MPI_{Wait|Test}jakékoli volání, které vyvolá query_fn i free_fn, vrátí volání MPI kód chyby vrácený posledním zpětným voláním, a to free_fn. Pokud jeden nebo více požadavků ve volání MPI_{Wait|Test}{some|all} selhal a volání MPI se vrátí MPI_ERR_IN_STATUS. V takovém případě, pokud volání MPI bylo předáno pole stavů, mpi vrátí ve všech stavech, které odpovídají dokončené generalizované žádosti kód chyby vrácený odpovídajícím vyvoláním funkce zpětného volání free_fn . Pokud však byla funkce MPI předána MPI_STATUSES_IGNORE, budou jednotlivé kódy chyb vrácené jednotlivými funkcemi zpětného volání ztraceny.
Fortran
SUBROUTINE GREQUEST_QUERY_FUNCTION(EXTRA_STATE, STATUS, IERROR)
INTEGER STATUS(MPI_STATUS_SIZE), IERROR
INTEGER(KIND=MPI_ADDRESS_KIND) EXTRA_STATE
Poznámky
Funkce query_fn vypočítá stav, který se má vrátit pro generalizovaný požadavek. Stav obsahuje také informace o úspěšném nebo neúspěšném zrušení požadavku (výsledek, který vrátí MPI_Test_cancelled).
Zpětné volání query_fn vyvolá MPI_{Wait|Test}{any|some|all} volání, které dokončilo generalizovaný požadavek přidružený k tomuto zpětnému volání. Funkce zpětného volání je také vyvolána voláním MPI_Request_get_status, pokud je požadavek dokončen při volání. V obou případech se zpětné volání předá odkaz na odpovídající proměnnou stavu předanou uživatelem volání MPI; stav nastavený funkcí zpětného volání je vrácen voláním MPI. Pokud uživatel zadal MPI_STATUS_IGNORE nebo MPI_STATUSES_IGNORE do funkce MPI, která způsobí volání query_fn , mpi předá query_fn platný objekt stavu a tento stav se při vrácení funkce zpětného volání ignoruje. Všimněte si, že query_fn je vyvolána až po zavolání MPI_Grequest_complete v požadavku; může být vyvolána několikrát pro stejný generalizovaný požadavek, například pokud uživatel volá MPI_Request_get_status pro tento požadavek několikrát. Všimněte si také, že volání MPI_{Wait|Test}{some|all} může způsobit více vyvolání funkcí zpětného volání query_fn , jednu pro každou generalizovanou žádost, která je dokončena voláním MPI. Pořadí těchto volání není v mpi určeno.
Požadavky
Produkt |
HPC Pack 2012 MS-MPI Redistributable Package, HPC Pack 2008 R2 MS-MPI Redistributable Package, HPC Pack 2008 MS-MPI Redistributable Package nebo HPC Pack 2008 Client Utilities |
Hlavička |
Mpi.h; Mpif.h |