Condividi tramite


Funzione InterlockedMin

Trova il valore minimo, atomicamente.

Sintassi

void InterlockedMin(
  in  UINT dest,
  in  UINT value,
  out UINT original_value
);

Parametri

dest [in]

Tipo: UINT

Indirizzo di destinazione.

valore [in]

Tipo: UINT

Valore di input.

original_value [out]

Tipo: UINT

Valore originale.

Valore restituito

Nothing

Commenti

Questa operazione può essere eseguita solo su risorse digitate int e uint e variabili di memoria condivise. Per questa funzione sono disponibili tre possibili usi. Il primo è quando R è un tipo di variabile di memoria condivisa. In questo caso, la funzione esegue un minimo atomico del valore per il registro di memoria condivisa a cui fa riferimento il dest. Il secondo scenario è quando R è un tipo di variabile di risorsa. In questo scenario, la funzione esegue un minimo atomico del valore nella posizione della risorsa a cui fa riferimento il più dest. Infine, il terzo scenario è quando R è un tipo di variabile locale. In questo scenario, la funzione riduce a un minimo il valore di più dest e valore, archiviato nella parte più dest. La funzione di overload ha una variabile di output aggiuntiva che verrà impostata sul valore originale del massimo. Questa operazione di overload è disponibile solo quando R è leggibile e scrivibile.

Questa funzione è supportata nei tipi di shader seguenti:

VS HS DS GS PS CS
x x x x x x

 

Vedi anche

RWByteAddressBuffer

Modello shader 5