
MQMD(메시지 헤더)는 메시지의 속성을 담고 있는 헤더로, 메시지의 유형, 우선순위, TTL 등 다양한 정보를 포함합니다.
MQCFH(체크 포인트 헤더)는 체크 포인트 헤더로, 메시지의 읽기 위치를 기록하는 헤더입니다.
MQSeries Get 함수에서 MQMD와 MQCFH를 사용하는 방법은 다음과 같습니다.
1. MQMD를 사용하여 메시지의 속성을 확인합니다.
- 메시지의 유형, 우선순위, TTL 등 다양한 정보를 확인할 수 있습니다.
2. MQCFH를 사용하여 메시지의 읽기 위치를 기록합니다.
- 메시지의 읽기 위치를 기록하여 다음에 읽을 위치를 저장할 수 있습니다.
MQSeries Get 함수에서 MQMD와 MQCFH를 사용하는 예제는 다음과 같습니다.
#hostingforum.kr
c
#include
// MQSeries Get 함수를 사용하여 MQ 메시지를 읽어옵니다.
int main() {
MQHCONN hconn; // MQ 연결 핸들
MQOD mqod; // MQ 메시지 옵션
MQMD mqmd; // MQ 메시지 헤더
MQCFH mqcfh; // MQ 체크 포인트 헤더
char *msg; // MQ 메시지
// MQ 연결 핸들을 얻습니다.
MQOPEN(&hconn, "QMGR", MQOO_INQUIRE, NULL, NULL);
// MQ 메시지 옵션을 설정합니다.
mqod.ObjectName = "QMGR";
mqod.ObjectType = MQOT_Q;
// MQ 메시지를 읽어옵니다.
MQGET(&hconn, &mqod, &mqmd, &mqcfh, &msg, 1024, 0);
// MQ 메시지 헤더를 확인합니다.
printf("메시지 유형: %dn", mqmd.Format);
printf("메시지 우선순위: %dn", mqmd.Priority);
printf("메시지 TTL: %dn", mqmd.Expiry);
// MQ 체크 포인트 헤더를 기록합니다.
mqcfh.Checkpoint = 0;
// MQ 메시지를 저장합니다.
MQPUT(&hconn, &mqod, &mqmd, &mqcfh, msg, strlen(msg), 0);
// MQ 연결 핸들을 닫습니다.
MQCLOSE(&hconn, 0);
return 0;
}
이 예제에서는 MQSeries Get 함수를 사용하여 MQ 메시지를 읽어옵니다. MQ 메시지 헤더를 확인하고 MQ 체크 포인트 헤더를 기록하여 다음에 읽을 위치를 저장합니다.
2025-06-27 07:24