MSMPI_Waitsome_interruptible fonction
Attend qu’au moins une des opérations associées aux handles actifs dans la liste soit terminée, ou que l’appel soit interrompu par un autre thread qui appelle 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[]
);
Paramètres
incount
Nombre de requêtes dans le tableau array_of_requests.array_of_requests
Tableau de handles de requête des opérations sur lesquelles attendre la fin. Si un handle de requête a été alloué par une fonction de communication non bloquante, il est libéré et le handle associé est défini sur MPI_REQUEST_NULL.outcount [out]
Nombre de requêtes spécifiées dans le paramètre array_of_requests qui sont terminées et nombre d’éléments dans les tableaux array_of_indices et array_of_statuses .Si le array_of_requests ne contient pas de handles actifs, la fonction retourne immédiatement avec le paramètre d’outcount défini sur MPI_UNDEFINED.
Si cette fonction est interrompue avant la fin des demandes, l’appel est retourné avec le paramètre d’effectif défini sur zéro.
array_of_indices
Retourne les index dans le paramètre array_of_requests des opérations terminées. Les index tableaux sont basés sur zéro en C et un dans Fortran.array_of_statuses
Retourne le status des opérations qui sont terminées. Les éléments de ce tableau correspondent aux éléments du tableau array_of_indices .
Valeur retournée
Retourne MPI_SUCCESS en cas de réussite. Sinon, la valeur de retour est un code d’erreur.
Dans Fortran, la valeur de retour est stockée dans le paramètre IERROR .
Si la fonction retourne une erreur autre que MPI_ERR_IN_STATUS, elle ne met pas à jour les champs d’erreur des états dans le paramètre array_of_statuses .
Remarques
Dans un environnement multithread, les utilisateurs doivent obtenir le verrou Microsoft MPI global à l’aide de la fonction MSMPI_Queuelock_acquire avant d’appeler MSMPI_Waitsome_interruptible. Cette fonction est interrompue lorsqu’un autre thread appelle la fonction MSMPI_Queuelock_acquire afin d’accéder à la bibliothèque MPI.
Cette fonction est une extension de la norme.
Configuration requise
Produit |
HpC Pack 2012 MS-MPI Redistributable Package, HPC Pack 2008 R2 MS-MPI Redistributable Package, HPC Pack 2008 MS-MPI Redistributable Package ou HPC Pack 2008 Client Utilities |
En-tête |
Mpi.h |
Bibliothèque |
Msmpi.lib |
DLL |
Msmpi.dll |