Megosztás:


MPI_Grequest_free_function visszahívási függvény

MPI_Grequest_free_function az alkalmazás által definiált függvénynév helyőrzője.

Szintaxis

int MPI_Grequest_free_function(
  _In_opt_ void *extra_state
);

Paraméterek

  • extra_state [in, nem kötelező]
    Extra állapot.

Visszatérési érték

Minden visszahívási függvény hibakódot ad vissza. A rendszer visszaadja a kódot, és a hibakódnak megfelelően kezeli a visszahívási függvényt meghívó MPI-függvény. Ha például hibakódokat ad vissza, akkor a visszahívási függvény által visszaadott hibakódot a visszahívási függvényt meghívó MPI-függvény adja vissza. Olyan MPI_Waitany és MPI_Testany hívás esetén, amely query_fn és free_fn is meghív, az MPI-hívás visszaadja az utolsó visszahívás által visszaadott hibakódot, azaz free_fn. Ha a MPI_Waitsome, MPI_Waitall, MPI_Testsome vagy MPI_Testall hívásának egy vagy több kérése meghiúsult, akkor az MPI-hívás MPI_ERR_IN_STATUS ad vissza. Ilyen esetben, ha az MPI-hívást állapotok tömbje adta át, akkor az MPI minden olyan állapotban visszaadja a hibát, amely egy befejezett általános kérésnek felel meg, a free_fn visszahívási függvény megfelelő meghívása által visszaadott hibakódot. Ha azonban az MPI-függvény MPI_STATUSES_IGNORE lett átadva, az egyes visszahívási függvények által visszaadott egyéni hibakódok elvesznek.

Fortran

    SUBROUTINE GREQUEST_FREE_FUNCTION(EXTRA_STATE, IERROR)
        INTEGER IERROR
        INTEGER(KIND=MPI_ADDRESS_KIND) EXTRA_STATE

Megjegyzések

A free_fn függvény a felhasználó által lefoglalt erőforrások eltávolítására lesz meghívva az általános kérés felszabadításakor.

A free_fn visszahívást a(z) {Wait| MPI_ hívja meg.Test}{any|some|all} hívás, amely teljesítette a visszahíváshoz társított általános kérést. free_fn meghívása a query_fn hívása után történik ugyanahhoz a kéréshez. Ha azonban az MPI-hívás több általános kérést is teljesített, az MPI nem határozza meg, hogy a free_fn visszahívási függvények milyen sorrendben legyenek meghívva.

A free_fn visszahívást is meghívja a rendszer a MPI_Request_free hívása által felszabadított általános kérésekhez (nincs hívás MPI_{Wait|Ilyen kérés esetén test}{any|some|all} történik. Ebben az esetben a visszahívási függvény vagy az MPI-hívás MPI_Request_free, vagy az MPI-hívás MPI_Grequest_complete lesz meghívva, attól függően, hogy melyik történik utoljára, azaz ebben az esetben a tényleges felszabadító kód akkor lesz végrehajtva, amint mindkét hívás MPI_Request_free és MPI_Grequest_complete történt. A kérés csak a free_fn befejeződése után lesz felszabadítva. Vegye figyelembe, hogy a free_fn kérésenként csak egyszer hívja meg egy megfelelő program.

Követelmények

Termék

HPC Pack 2012 MS-MPI terjeszthető csomag, HPC Pack 2008 R2 MS-MPI terjeszthető csomag, HPC Pack 2008 MS-MPI terjeszthető csomag vagy HPC Pack 2008 Client Utilities

Fejléc

Mpi.h; Mpif.h

Lásd még

MPI külső függvények

MPI_Grequest_start

MPI_Waitall

MPI_Waitsome

MPI_Waitany

MPI_Testall

MPI_Testsome

MPI_Testany