警告 C28107

调用函数时必须保留资源

调用函数时未获取程序在调用函数之前必须获取的资源。 因此,函数调用将失败。 只有在同一个函数中获取和释放资源时才会上报此警告。

示例

下面的代码示例将生成此警告:

ExAcquireResourceLite(resource, true);
ExReleaseResourceLite(resource);

下面的代码示例可避免此警告:

KeEnterCriticalRegion();
ExAcquireResourceLite(resource, true);
ExReleaseResourceLite(resource);
KeLeaveCriticalRegion();
KeEnterCriticalRegion();
ExAcquireResourceLite(resource, true);
ExReleaseResourceLite(resource);
KeLeaveCriticalRegion();