Функция GetNotificationResourceManager (ktmw32.h)
Запрашивает и получает уведомление для диспетчера ресурсов (RM). Эта функция используется регистром RM для получения уведомлений при изменении состояния транзакции.
Синтаксис
BOOL GetNotificationResourceManager(
[in] HANDLE ResourceManagerHandle,
[out] PTRANSACTION_NOTIFICATION TransactionNotification,
[in] ULONG NotificationLength,
[in, optional] DWORD dwMilliseconds,
[out, optional] PULONG ReturnLength
);
Параметры
[in] ResourceManagerHandle
Дескриптор для диспетчера ресурсов.
[out] TransactionNotification
Указатель на структуру TRANSACTION_NOTIFICATION , которая получает первое доступное уведомление.
[in] NotificationLength
Размер буфера TransactionNotification в байтах.
[in, optional] dwMilliseconds
Время (в миллисекундах), в течение которого вызывающее приложение блокируется во время ожидания получения уведомления. Если по истечении времени ожидания уведомления недоступны, возвращается ERROR_TIMEOUT .
[out, optional] ReturnLength
Указатель на переменную, которая получает фактический размер уведомления, полученного параметром TransactionNotification .
Возвращаемое значение
Если функция выполняется успешно, возвращается ненулевое значение.
Если функция завершается ошибкой, возвращаемое значение равно нулю (0). Чтобы получить расширенные сведения об ошибке, вызовите функцию GetLastError .
В следующем списке указаны возможные коды ошибок:
Комментарии
Все диспетчеры ресурсов должны зарегистрироваться для получения уведомлений TRANSACTION_NOTIFY_PREPREPARE, TRANSACTION_NOTIFY_PREPARE и TRANSACTION_NOTIFY_COMMIT , даже если впоследствии они вызывают ReadOnlyEnlistment , чтобы пометить зачисление как доступное только для чтения. Диспетчеры ресурсов могут поддерживать TRANSACTION_NOTIFY_SINGLE_PHASE_COMMIT, но они также должны поддерживать многофазные уведомления о предварительной подготовке, подготовке и фиксации. Список всех уведомлений, которые могут получать диспетчеры ресурсов, см . в разделе TRANSACTION_NOTIFICATION.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows Vista |
Минимальная версия сервера | Windows Server 2008 |
Целевая платформа | Windows |
Header | ktmw32.h |
Библиотека | KtmW32.lib |
DLL | KtmW32.dll |
См. также раздел
GetNotificationResourceManagerAsync
Функции диспетчера транзакций ядра