MSMPI_Waitsome_interruptible funkce
Počká, dokud se nedokončí alespoň jedna z operací přidružených k aktivním popisovačům v seznamu, nebo dokud není volání přerušeno jiným vláknem, které volá MSMPI_Queuelock_acquire.
Syntaxe
int MPIAPI MSMPI_Waitsome_interruptible(
int incount,
_Inout_count_(incount) MPI_Request array_of_requests[],
_Out_ int *outcount,
_Out_cap_post_count_(incount,*outcount) int array_of_indices[],
_Out_cap_post_count_(incount,*outcount) int array_of_statuses[]
);
Parametry
incount
Počet požadavků v poli array_of_requests.array_of_requests
Pole zpracování požadavků operací, u kterých se má čekat na dokončení. Pokud byl popisovač požadavku přidělen neblokující komunikační funkcí, uvolní se a přidružený popisovač se nastaví na MPI_REQUEST_NULL.outcount [out]
Počet dokončených požadavků zadaných v parametru array_of_requests a počet prvků v polích array_of_indices a array_of_statuses .Pokud array_of_requests neobsahuje žádné aktivní popisovače, vrátí funkce okamžitě s parametrem outcount nastaveným na MPI_UNDEFINED.
Pokud je tato funkce přerušena před dokončením požadavků, vrátí se volání s parametrem outcount nastaveným na nulu.
array_of_indices
Vrátí indexy v rámci parametru array_of_requests dokončených operací. Indexy polí jsou v jazyce C založené na nule a 1 ve Fortranu.array_of_statuses
Vrátí stav dokončených operací. Prvky tohoto pole odpovídají prvkům array_of_indices pole.
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 .
Pokud funkce vrátí jinou chybu než MPI_ERR_IN_STATUS, neaktualizuje pole chyb stavů v parametru array_of_statuses .
Poznámky
V prostředí s více vlákny musí uživatelé získat globální zámek MPI společnosti Microsoft pomocí funkce MSMPI_Queuelock_acquire před voláním MSMPI_Waitsome_interruptible. Tato funkce je přerušena, když jiné vlákno volá funkci MSMPI_Queuelock_acquire pro přístup ke knihovně MPI.
Tato funkce je rozšířením standardu.
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 |
Knihovna |
Msmpi.lib |
DLL |
Msmpi.dll |