Dela via


funktionen MPI_Win_lock

Påbörjar en RMA-åtkomstepook vid målprocessen.

Syntax

int MPIAPI MPI_Win_lock(
   int     lock_type,
   int     rank,
   int     assert,
   MPI_Win win
);

Parametrar

  • lock_type
    Anger om andra processer kan komma åt målfönstret samtidigt (om MPI_LOCK_SHARED) eller inte (MPI_LOCK_EXCLUSIVE).

  • Frodigt
    Rangordning för låst fönster.

  • Hävda
    Används för att optimera det här anropet; noll kan användas som standard.

  • Vinna
    Fönsterobjekt.

Returvärde

Returnerar MPI_SUCCESS vid lyckat resultat. Annars är returvärdet en felkod.

I Fortran lagras returvärdet i parametern IERROR .

Fortran

    MPI_WIN_LOCK(LOCK_TYPE, RANK, ASSERT, WIN, IERROR)
        INTEGER LOCK_TYPE, RANK, ASSERT, WIN, IERROR

Kommentarer

Namnet på den här rutinen är missvisande. I synnerhet behöver den här rutinen inte blockeras, förutom när målprocessen är anropsprocessen.

Implementeringar kan begränsa användningen av RMA-kommunikation som synkroniseras av låsningsanrop till fönster i minnet som allokeras av MPI_Alloc_mem. Lås kan endast användas portabelt i sådant minne.

Kontrollargumentet används för att ange särskilda villkor för stängslet som en implementering kan använda för att optimera MPI_Win_fence åtgärden. Värdet noll är alltid korrekt. Andra kontrollvärden kan vara ELLERtillsammans. Intyg som är giltiga för MPI_Win_fence är:

  • MPI_MODE_NOCHECK – inga andra processer håller, eller försöker hämta ett konfliktlås, medan anroparen håller fönsterlåset. Detta är användbart när ömsesidig uteslutning uppnås på andra sätt, men de konsekvensåtgärder som kan kopplas till lås- och upplåsningsanropen krävs fortfarande.

Krav

Produkt

HPC Pack 2012 MS-MPI Redistributable Package, HPC Pack 2008 R2 MS-MPI Redistributable Package, HPC Pack 2008 MS-MPI Redistributable Package eller HPC Pack 2008 Client Utilities

Huvud

Mpi.h; Mpif.h

Bibliotek

Msmpi.lib

DLL

Msmpi.dll

Se även

MPI One-Sided Communications Functions