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,则表示对象在此事务中分配了此资源,该对象使用,然后在对象生存期结束时显式或隐式 (释放资源) 。 同一事务中的第二个对象请求类似的资源,并考虑第一个对象使用的资源。 此资源是一个很好的候选项,因为它已登记在正确的事务中。
如果每个事务只能使用一次特定类型的资源,则已在事务中使用过一次的资源可由 FALSE 的 fRequiresTransactionEnlistment 标识,并可通过返回 *pRating=0 来拒绝该资源以供进一步使用。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | Windows 2000 Professional [仅限桌面应用] |
最低受支持的服务器 | Windows 2000 Server [仅限桌面应用] |
目标平台 | Windows |
标头 | comsvcs.h |