SpmiGetStatSet 서브루틴

용도

지정된 집합에 속한 모든 통계에 대한 데이터 값을 읽도록 SPMI에 요청합니다.

라이브러리

SPMI 라이브러리libSpmi.a)

구문

#include sys/Spmidef.h
int SpmiGetStatSet(StatSet, Force);
struct SpmiStatSet *StatSet;
boolean Force;

설명

SpmiGetStatSet 서브루틴은 StatSet 매개변수로 식별된 SpmiStatSet 속한 모든 통계에 대한 데이터 값을 읽도록 SPMI에 요청합니다. Force 매개 변수는 데이터 값을 소스에서 강제로 새로 고치는 데 사용됩니다.

Force 매개 변수는 해당 매개 변수가 속한 SpmiStatSetsSpmiHotSets 관계없이 모든 SpmiStatValsSpmiHotVals 구조에 대해 SPMI 내부에 있는 스위치를 재설정하는 방식으로 작동합니다. 통계의 데이터 값을 요청할 때마다 이 스위치가 체크됩니다. 스위치가 설정되어 있으면 SPMI는 원본 데이터 소스에서 최신 데이터 값을 읽습니다. 스위치가 설정되어 있지 않으면 SPMI는 SpmiStatVals 구조에 저장된 데이터 값을 읽습니다. 이 메커니즘을 통해 프로그램은 소스에서 값을 검색하는 횟수를 동기화하고 최소화할 수 있습니다. 한 가지 방법은 강제 요청이 경과 시간당 두 번 이상 실행되지 않도록 하는 것입니다.

이 하위 루틴은 Performance Aide for AIX® 라이선스 제품의 서버 옵션의 일부입니다.

매개변수

StatSet

SpmiCreateStatSet 서브루틴 호출에 의해 생성된 SpmiStatSet 유형의 유효한 구조에 대한 포인터를 지정합니다.

강제 실행

True로 설정하면 SPMI가 집합의 데이터 값을 읽기 전에 원본 소스에서 강제로 새로 고칩니다. False로 설정하면 SPMI가 이전에 데이터 소스에서 검색한 대로 데이터 값을 읽도록 합니다.

Force 인수를 true로 설정하면 SPMI가 알고 있는 모든 통계를 사용되지 않는 것으로 표시하여 SPMI가 커널 메모리 또는 기타 소스에서 요청된 모든 통계를 새로 고치는 효과가 있습니다. 각 통계가 새로 고쳐지면 사용되지 않는 마크가 초기화됩니다. 서브루틴 호출에 지정된 StatSet 포함되지 않은 통계는 사용되지 않는 것으로 표시됩니다. 따라서 애플리케이션에서 여러 통계 집합 및 핫셋에 대해 SpmiGetStatSetSpmiGetHotSet 하위 루틴 호출을 반복적으로 실행하는 경우, 매번 첫 번째 호출에만 force 인수를 true로 설정하면 됩니다.

리턴 값

SpmiGetStatSet하위 루틴은 성공하면 0 값을 반환합니다. 실패하면 서브루틴은 0이 아닌 값을 반환합니다.

오류 코드

모든 SPMI 하위 루틴은 외부 변수를 사용하여 오류 정보를 제공합니다. 이러한 변수에 액세스하려면 애플리케이션 프로그램에서 다음과 같은 외부 변수를 정의해야 합니다:

  • 외부 문자 SpmiErrmsg[];
  • 외부 int SpmiErrno;

서브루틴이 오류 없이 반환되면 SpmiErrno 변수가 0으로 설정되고 SpmiErrmsg 문자 배열이 비어 있습니다. 오류가 감지되면 SpmiErrno 변수는 sys/Spmidef.h 파일에 정의된 대로 오류 코드를 반환하고, SpmiErrmsg 변수에는 오류의 원인을 설명하는 영문 텍스트가 포함되어 있습니다.

파일

항목 설명
/usr/include/sys/Spmidef.h 응용 프로그램에서 SPMI에 액세스하는 데 사용할 수 있는 서브루틴, 데이터 구조, 핸들 및 매크로를 선언합니다.