Metodo ISynchronizeContainer::WaitMultiple (objidlbase.h)

Attende che qualsiasi oggetto di sincronizzazione nel contenitore venga segnalato o che venga trascorso un periodo di timeout specificato.

Sintassi

HRESULT WaitMultiple(
  [in]  DWORD        dwFlags,
  [in]  DWORD        dwTimeOut,
  [out] ISynchronize **ppSync
);

Parametri

[in] dwFlags

Opzioni di attesa. I valori possibili vengono acquisiti dall'enumerazione COWAIT_FLAGS . COWAIT_WAITALL non è un'impostazione valida per questo metodo.

[in] dwTimeOut

L'ora in cui questa chiamata attenderà prima di restituire, in millisecondi. Se questo parametro è INFINITE, il chiamante attenderà fino a quando non viene segnalato un oggetto di sincronizzazione, indipendentemente dal tempo necessario. Se questo parametro è 0, il metodo restituisce immediatamente.

[out] ppSync

Puntatore a un puntatore all'interfaccia ISynchronize nell'oggetto di sincronizzazione segnalato. Questo parametro non può essere NULL.

Valore restituito

Questo metodo può restituire i valori restituiti standard E_INVALIDARG, E_OUTOFMEMORY e E_FAIL, nonché i valori seguenti.

Codice restituito Descrizione
S_OK
L'oggetto di sincronizzazione è stato segnalato.
RPC_E_TIMEOUT
Il periodo di timeout trascorso prima che l'oggetto di sincronizzazione sia stato segnalato.
RPC_E_NO_SYNC
Nel contenitore non sono presenti oggetti di sincronizzazione.

Commenti

Se il chiamante è in attesa in un appartamento a thread singolo, WaitMultiple entra nel ciclo modale COM. Se il chiamante è in attesa in un appartamento multithread, il chiamante viene bloccato fino a quando WaitMultiple non restituisce.

Requisiti

Requisito Valore
Client minimo supportato Windows 2000 Professional [solo app desktop]
Server minimo supportato Windows 2000 Server [solo app desktop]
Piattaforma di destinazione Windows
Intestazione objidlbase.h (include ObjIdl.h)

Vedi anche

CoWaitForMultipleHandles

ISynchronizeContainer