QOSQueryFlow 함수(qos2.h)
QOSQueryFlow 함수는 QoS 하위 시스템에 추가된 특정 흐름에 대한 정보를 요청합니다. 이 함수는 비동기적으로 호출될 수 있습니다.
구문
ExternC BOOL QOSQueryFlow(
[in] HANDLE QOSHandle,
[in] QOS_FLOWID FlowId,
[in] QOS_QUERY_FLOW Operation,
[in, out] PULONG Size,
[out] PVOID Buffer,
[in, optional] DWORD Flags,
[out, optional] LPOVERLAPPED Overlapped
);
매개 변수
[in] QOSHandle
QOSCreateHandle에서 반환된 QOS 하위 시스템에 대한 핸들입니다.
[in] FlowId
흐름 식별자를 지정합니다. QOS_FLOWID 부호 없는 32비트 정수입니다.
[in] Operation
쿼리할 흐름 정보의 유형을 지정합니다. 이 매개 변수는 Buffer 에 포함할 구조를 지정합니다.
값 | 의미 |
---|---|
|
버퍼 에는 QOS_FLOW_FUNDAMENTALS 구조가 포함됩니다. |
|
버퍼 에는 QOS_PACKET_PRIORITY 구조체가 포함됩니다. |
|
버퍼 에는 계약을 요청할 때 지정된 흐름 속도를 초당 비트 단위로 나타내는 UINT64 값이 포함됩니다. |
[in, out] Size
Buffer 매개 변수의 크기를 바이트 단위로 나타냅니다.
함수 반환에 성공하면 이 매개 변수는 Buffer에 복사된 바이트 수를 지정합니다.
이 호출이 ERROR_INSUFFICIENT_BUFFER 실패하면 이 매개 변수는 이 작업을 성공적으로 완료하기 위해 필요한 최소 버퍼 크기를 나타냅니다.
[out] Buffer
Operation 매개 변수 값으로 지정된 구조체에 대한 포인터입니다.
[in, optional] Flags
반환되는 데이터와 관련된 플래그입니다.
[out, optional] Overlapped
비동기 출력에 사용되는 OVERLAPPED 구조체에 대한 포인터입니다. 이 함수가 비동기적으로 호출되지 않는 경우 NULL 로 설정해야 합니다.
반환 값
함수가 성공하면 반환 값이 0이 아닙니다.
함수가 실패하면 반환 값은 0입니다. 확장 오류 정보를 가져오려면 GetLastError를 호출합니다. 몇 가지 가능한 오류 코드는 다음과 같습니다.
반환 코드 | 설명 |
---|---|
|
QoS 하위 시스템은 현재 이 호스트와 대상 호스트 간의 네트워크 경로에서 이 작업을 허용하지 않도록 정책에 의해 구성됩니다. 예를 들어 기본 정책은 qWAVE 실험이 오프 링크 대상으로 실행되지 않도록 방지합니다. |
|
충분한 유용한 정보를 수집하기 전에 QOS 하위 시스템에 대한 요청 시간이 초과되었습니다. |
|
Size 매개 변수에 지정된 버퍼 길이가 쿼리된 데이터에 충분하지 않습니다. 이제 Size 매개 변수에 필요한 최소 크기가 포함됩니다. |
|
QOSHandle 매개 변수가 잘못되었습니다. |
|
FlowId 매개 변수 또는 버퍼 크기가 부족합니다. |
|
잘못된 FlowId가 지정되었습니다. |
|
메모리 할당이 실패했음을 나타냅니다. |
|
수행되는 작업에는 QoS 하위 시스템에 없는 정보가 필요합니다. 이 네트워크에서 이 정보를 가져오는 것은 현재 지원되지 않습니다. 예를 들어 대상 호스트가 오프 링크인 네트워크 경로에서는 대역폭 추정을 가져올 수 없습니다. |
|
작업을 수행할 리소스가 부족합니다. |
|
I/O 디바이스 오류 때문에 요청을 수행할 수 없는 경우 |
|
업데이트 흐름 요청이 성공적으로 시작되었음을 나타냅니다. |
|
하드웨어 오류로 인해 표시된 디바이스를 다시 초기화해야 합니다. 애플리케이션은 클린 QOSCreateHandle을 다시 호출해야 합니다. |
|
네트워크 어댑터 하드웨어 오류가 발생했습니다. |
|
네트워크 위치에 연결할 수 없습니다. |
|
는 반환할 유효한 데이터가 아닙니다. |
|
현재 쿼리에 응답할 네트워킹 조건에 대한 데이터가 부족합니다. 이는 일반적으로 qWAVE가 네트워크 상태를 확인하기 전에 더 많은 데이터를 대기하기 때문에 주의해야 하는 일시적인 상태입니다. |
요구 사항
요구 사항 | 값 |
---|---|
지원되는 최소 클라이언트 | Windows Vista [데스크톱 앱만 해당] |
지원되는 최소 서버 | Windows Server 2008 [데스크톱 앱만 해당] |
대상 플랫폼 | Windows |
헤더 | qos2.h(Qos2.h 포함) |
라이브러리 | Qwave.lib |
DLL | Qwave.dll |