Метод IDispenserDriver::RateResource (comsvcs.h)
Оценивает, насколько хорошо соответствует ресурсу-кандидату.
Синтаксис
HRESULT RateResource(
[in] const RESTYPID ResTypId,
[in] const RESID ResId,
[in] const BOOL fRequiresTransactionEnlistment,
[out] RESOURCERATING *pRating
);
Параметры
[in] ResTypId
Тип ресурса, которому диспетчер диспенсера ищет соответствие.
[in] ResId
Потенциальный ресурс, который рассматривает диспетчер диспенсера.
[in] fRequiresTransactionEnlistment
Если задано значение TRUE, для ресурса-кандидата (ResId), если он выбран, требуется зачисление транзакций. Если зачисление является дорогостоящим, RateResource может оценить такой ресурс ниже, чем ресурс, который уже включен в правильную транзакцию.
[out] pRating
Рейтинг диспенсера этого кандидата. Этот параметр может принимать одно из указанных ниже значений.
Значение | Значение |
---|---|
|
Ресурс-кандидат непригодный для этого запроса. Ресурс не является или не может быть изменен на тип ResTypId. |
|
Кандидат плохо подходит, но пригоден для использования. Менеджер диспенсера будет продолжать предлагать кандидатов. |
|
Кандидат лучше, чем кандидаты, оцененные как 1. Менеджер диспенсера будет продолжать предлагать кандидатов. |
|
Кандидат идеально подходит. Диспетчер дозатора перестанет предлагать кандидатов. |
Возвращаемое значение
Если метод выполнен успешно, возвращаемое значение будет S_OK. В противном случае это E_FAIL.
Комментарии
Если параметр fRequiresTransactionEnlistment имеет значение FALSE, объект был указан в этой транзакции, объект использовался, а затем освободил ресурс (явно или неявно по истечении времени существования объекта). Второй объект в той же транзакции запрашивает аналогичный ресурс, и считается ресурс, используемый первым объектом. Этот ресурс является хорошим кандидатом, так как он уже включен в правильную транзакцию.
Если ресурс определенного типа можно использовать только один раз для каждой транзакции, ресурс, который уже использовался один раз в транзакции, можно определить с помощью fRequiresTransactionEnlistmentfalse и может быть отклонен для дальнейшего использования, возвращая *pRating=0.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows 2000 Professional [только классические приложения] |
Минимальная версия сервера | Windows 2000 Server [только классические приложения] |
Целевая платформа | Windows |
Header | comsvcs.h |