Поделиться через


Метод ISynchronizeContainer::WaitMultiple (objidl.h)

Ожидает передачи сигнала о любом объекте синхронизации в контейнере или истечения указанного периода времени ожидания в зависимости от того, что наступит раньше.

Синтаксис

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

Параметры

[in] dwFlags

Параметры ожидания. Возможные значения берутся из перечисления COWAIT_FLAGS . COWAIT_WAITALL не является допустимым параметром для этого метода.

[in] dwTimeOut

Время ожидания этого вызова перед возвратом в миллисекундах. Если этот параметр имеет значение INFINITE, вызывающий объект будет ожидать передачи сигнала об объекте синхронизации независимо от того, сколько времени это займет. Если этот параметр равен 0, метод возвращает немедленно.

[out] ppSync

Указатель на указатель интерфейса ISynchronize на объект синхронизации, который был сигнализирован. Этот параметр не может иметь значение NULL.

Возвращаемое значение

Этот метод может возвращать стандартные возвращаемые значения E_INVALIDARG, E_OUTOFMEMORY и E_FAIL, а также следующие значения.

Код возврата Описание
S_OK
Объект синхронизации был сигнализирован.
RPC_E_TIMEOUT
Время ожидания, прошедшее до передачи сигнала об объекте синхронизации.
RPC_E_NO_SYNC
В контейнере нет объектов синхронизации.

Комментарии

Если вызывающий объект находится в однопотоковом объекте, WaitMultiple входит в модальный цикл COM. Если вызывающий объект находится в многопоточной квартире, вызывающий объект блокируется до возврата WaitMultiple .

Требования

Требование Значение
Минимальная версия клиента Windows 2000 Professional [только классические приложения]
Минимальная версия сервера Windows 2000 Server [только классические приложения]
Целевая платформа Windows
Header objidl.h (включая ObjIdl.h)

См. также раздел

CoWaitForMultipleHandles

ISynchronizeContainer