Funzione SafeArrayUnlock (oleauto.h)

Decrementa il numero di blocchi di una matrice in modo che possa essere liberato o ridimensionato.

Sintassi

HRESULT SafeArrayUnlock(
  [in] SAFEARRAY *psa
);

Parametri

[in] psa

Descrittore di matrice creato da SafeArrayCreate.

Valore restituito

Questa funzione può restituire uno di questi valori.

Codice restituito Descrizione
S_OK
Operazione completata.
E_INVALIDARG
L'argomento psa non è valido.
E_UNEXPECTED
Impossibile sbloccare la matrice.

Commenti

Questa funzione viene chiamata dopo il completamento dell'accesso ai dati in una matrice.

Thread safety

Tutti i membri statici pubblici del tipo di dati SAFEARRAY sono thread-safe. Non è garantito che i membri dell'istanza siano thread-safe.

Si consideri ad esempio un'applicazione che usa le funzioni SafeArrayLock e SafeArrayUnlock. Se queste funzioni vengono chiamate simultaneamente da thread diversi nella stessa istanza del tipo di dati SAFEARRAY , è possibile creare un conteggio di blocchi incoerente. In questo modo, la funzione SafeArrayUnlock restituirà E_UNEXPECTED. È possibile evitare questo problema specificando il codice di sincronizzazione personalizzato.

Requisiti

Requisito Valore
Piattaforma di destinazione Windows
Intestazione oleauto.h
Libreria OleAut32.lib
DLL OleAut32.dll