다음을 통해 공유


확인 처리(CPI-C)

확인 처리를 위한 이벤트 시퀀스는 다음과 같습니다.

  1. 동기화 수준을 설정합니다.

  2. 확인 요청을 보냅니다.

  3. 데이터 및 확인 요청을 받습니다.

  4. 확인 요청에 응답합니다.

  5. 대화의 할당을 취소합니다.

    TP(트랜잭션 프로그램)는 확인 처리를 사용하여 데이터와 함께 확인 요청을 보냅니다. 파트너 TP는 데이터 수신을 확인하거나 오류가 발생했음을 나타냅니다. 두 TP가 확인 요청과 응답을 교환할 때마다 동기화됩니다.

참고

이 섹션의 예제에서는 이를 표시하지 않지만 TP가 호출 TP인지 호출 가능한 TP인지에 관계없이 모든 TP가 데이터를 보내거나 받을 수 있습니다.

다음 표에서는 확인 처리와 관련된 단계를 보여 줍니다.

단계 호출하는 TP에 의해 발급됨 호출 가능한 TP에서 발급
1 Initialize_Conversation
2 Set_Sync_Level(sync_level=CM_CONFIRM)
3 할당
4 Send_Data
5 확인
6 Accept_Conversation
7 수신(data_received= CM_COMPLETE_DATA_RECEIVED)(status_received= CM_CONFIRM_RECEIVED)
8 확인됨
9 (return_code=CM_OK)
10 Send_Data
11 할당 취소
12 Receive
13 (status_received= CM_CONFIRM_DEALLOC_RECEIVED)
14 확인됨
15 (return_code=CM_OK)

동기화 수준 설정

Set_Sync_Level 호출을 사용하면 대화의 기본 동기화 수준을 재정의할 수 있습니다. 동기화 수준은 대화의 특성 중 하나입니다. 다음과 같은 두 가지 동기화 수준이 있습니다.

  • CM_CONFIRM TP가 데이터 수신 확인을 요청하고 이러한 요청에 응답할 수 있습니다.

  • CM_NONE 확인 처리가 수행되지 않는 기본값입니다.

    Initialize_Conversation 호출은 대화의 기본 특성을 설정합니다. Set_ 시작하는 몇 가지 호출이 있습니다. 이러한 호출을 사용하면 기본 대화 특성을 재정의할 수 있습니다.

확인 요청 보내기

Confirm 호출을 실행하면 다음 두 가지 효과가 있습니다.

  • 로컬 LU의 송신 버퍼를 플러시하고 버퍼에 포함된 모든 데이터를 파트너 TP로 보냅니다.

  • 파트너 TP가 Receive 호출의 status_received 매개 변수를 통해 수신하는 확인 요청을 보냅니다.

    확인을 실행한 후 로컬 TP는 파트너 TP의 확인을 기다립니다.

확인 요청 수신

Receive 호출의 status_received 매개 변수는 로컬 TP에 필요한 향후 작업을 나타냅니다.

예제에서 첫 번째 수신에는 파트너 TP를 계속하기 전에 확인이 필요함을 나타내는 CM_CONFIRM_RECEIVED status_received 있습니다.

확인 요청에 응답

파트너 TP는 확인된 호출을 발행하여 데이터 수신을 확인합니다. 이렇게 하면 로컬 TP가 처리를 다시 시작할 수 있습니다.

대화 할당 취소

대화의 동기화 수준이 CM_CONFIRM 설정되었으므로 Deallocate 는 버퍼에서 플러시된 데이터와 함께 확인 요청을 보냅니다.

두 번째 수신호출의 경우 status_received CM_CONFIRM_DEALLOC_RECEIVED, 이는 파트너 TP가 대화를 할당 취소하기 전에 확인된 호출에 의해 생성된 확인이 필요함을 나타냅니다.