Freigeben über


SafeArrayUnlock-Funktion (oleauto.h)

Verringert die Sperranzahl eines Arrays, sodass es freigegeben oder die Größe geändert werden kann.

Syntax

HRESULT SafeArrayUnlock(
  [in] SAFEARRAY *psa
);

Parameter

[in] psa

Ein arraydeskriptor, der von SafeArrayCreate erstellt wurde.

Rückgabewert

Diese Funktion kann einen dieser Werte zurückgeben.

Rückgabecode BESCHREIBUNG
S_OK
Erfolg.
E_INVALIDARG
Das Argument psa ist ungültig.
E_UNEXPECTED
Das Array konnte nicht entsperrt werden.

Hinweise

Diese Funktion wird aufgerufen, nachdem der Zugriff auf die Daten in einem Array abgeschlossen ist.

Threadsicherheit

Alle öffentlichen statischen Member des SAFEARRAY-Datentyps sind threadsicher. Instanzmember sind nicht garantiert threadsicher.

Betrachten Sie beispielsweise eine Anwendung, die die Funktionen SafeArrayLock und SafeArrayUnlock verwendet. Wenn diese Funktionen gleichzeitig von verschiedenen Threads auf demselben SAFEARRAY-Datentyp instance aufgerufen werden, kann eine inkonsistente Sperranzahl erstellt werden. Dies führt schließlich dazu, dass die SafeArrayUnlock-Funktion E_UNEXPECTED zurückgibt. Sie können dies verhindern, indem Sie Ihren eigenen Synchronisierungscode bereitstellen.

Anforderungen

Anforderung Wert
Zielplattform Windows
Kopfzeile oleauto.h
Bibliothek OleAut32.lib
DLL OleAut32.dll