경고 C28107

함수를 호출할 때 리소스를 보유해야 합니다.

함수를 호출하기 전에 프로그램에서 획득해야 하는 리소스는 함수가 호출될 때 획득되지 않았습니다. 결과적으로 함수 호출이 실패합니다. 이 경고는 리소스를 획득하고 동일한 함수에서 해제할 때만 보고됩니다.

예시

다음 코드 예제에서는 이 경고를 생성합니다.

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

다음 코드 예제에서는 이 경고를 방지합니다.

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