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.
Vytvoří a vrátí požadavek definovaný uživatelem.
Syntaxe
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
);
Parametry
query_fn [v]
Funkce zpětného volání se vyvolá při dotaz na stav požadavku.free_fn [v]
Funkce zpětného volání vyvolána při uvolnění požadavku.cancel_fn [v]
Funkce zpětného volání vyvolána při zrušení požadavku.extra_state [v, volitelné]
Výše uvedeným funkcím byl předán dodatečný stav.žádost [out]
Zobecněný požadavek.
Vrácená hodnota
Vrátí MPI_SUCCESS při úspěchu. V opačném případě je návratovou hodnotou kód chyby.
Ve Fortranu je vrácená hodnota uložena v parametru 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
Poznámky
Návratové hodnoty z funkcí zpětného volání musí být platným kódem nebo třídou chyby MPI. Tato hodnota může být buď návratovou hodnotou z jakékoli rutiny MPI (s jednou výjimkou uvedenou níže), nebo některou z chybových tříd MPI. Pro přenosné programy mohou být použity MPI_ERR_OTHER ; Pokud chcete poskytnout konkrétnější informace, vytvořte novou třídu chyb MPI nebo kód s MPI_Add_error_class nebo MPI_Add_error_code a vraťte tuto hodnotu.
Standard MPI není jasný o návratových hodnotách z rutin zpětného volání. Ve standardu jsou však poznámky, které naznačují, že se jedná o kódy chyb MPI. Například stránky 169, řádek 46 až 170, řádek 1 vyžaduje, aby free_fn vrátil kód chyby MPI, který může být použit ve funkcích pro dokončování MPI, když vrátí MPI_ERR_IN_STATUS.
Jedním zvláštním případem je chybová hodnota vrácená MPI_Comm_dup , když rutina zpětného volání atributu vrátí chybu. Ze standardu MPI není jasné, jaké hodnoty mohou být použity k označení návratu chyby. Kromě toho testovací sada Intel MPI použila nenulové hodnoty k označení selhání a očekávala, že tyto hodnoty vrátí MPI_Comm_dup , když rutiny atributů zjistily chybu. Tyto chybové hodnoty nemusí být platné kódy chyb MPI nebo třídy. Z tohoto důvodu je na uživateli, aby buď použil platné kódy chyb MPI navrácené ze zpětných volání atributů, pokud mají být tyto kódy chyb vráceny zobecněnou žádostí zpětné volání, nebo zjistit a převést tyto kódy chyb na platné kódy chyb MPI (vzpomeňte si, že třídy chyb MPI jsou platné kódy chyb).
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; Soubor Mpif.h |
Knihovna |
Msmpi.lib |
DLL |
Msmpi.dll |