다음을 통해 공유


묵시적 무시

LU 6.2 동기화 지점 세션은 암시적 삭제라고 하는 설계된 메시지 흐름의 최적화를 사용할 수 있습니다. 프로토콜이 PS(FORGET 프레젠테이션 헤더)가 필요하다고 지정하면 세션의 다음 데이터 흐름은 그렇지 않더라도 FORGET이 수신되었음을 의미합니다. 정상적인 상황에서 TP는 동기화 지점 대화 중 하나에서 데이터를 받거나 보낼 때 다음 데이터 흐름을 인식합니다.

그러나 흐름의 마지막 메시지는 대화의 할당이 취소되어 발생할 수 있습니다. 이 경우 TP는 세션의 다음 데이터 흐름이 발생할 때 인식하지 못합니다. 이 알림을 TP에 제공하기 위해 TP가 호출될 콜백 함수를 등록할 수 있도록 DEALLOCATEMC_DEALLOCATE 동사가 수정됩니다.

  • 대화에서 사용되는 세션에 대한 첫 번째 일반 흐름 전송(요청 또는 응답)입니다.

  • 세션이 다른 데이터 흐름 전에 바인딩되지 않은 경우

  • DLC(데이터 링크 컨트롤) 중단으로 인해 세션이 비정상적으로 종료되는 경우

    프로시저의 주소가 APPC DLL로 전달되기 때문에 콜백 프로시저는 어떤 이름도 사용할 수 있습니다.

    콜백 루틴이 호출되기 전에 DEALLOCATEMC_DEALLOCATE 동사가 완료될 수 있습니다. 대화는 RESET 상태인 것으로 간주되며 대화 식별자를 사용하여 더 이상 동사를 실행할 수 없습니다. 애플리케이션이 세션의 다음 데이터 흐름 전에 TP_ENDED 동사를 발급하는 경우 콜백 루틴이 호출되지 않습니다.

    DEALLOCATEMC_DEALLOCATE 동사는 암시적 무시를 지원하도록 다음과 같이 수정됩니다.

  • TP가 할당 취소되는 대화에서 사용되는 세션의 다음 데이터 흐름에서 호출할 함수의 주소를 지정할 수 있도록 새 멤버 콜백이 추가됩니다. 이 멤버가 NULL이면 알림이 제공되지 않습니다. 공급업체는 일반적으로 이 콜백 함수를 공급합니다.

  • DEALLOCATEMC_DEALLOCATE 동사에는 콜백 함수가 호출될 때 매개 변수 중 하나로 반환되는 상관 관계 멤버도 포함됩니다. 애플리케이션은 어떤 방식으로든 이 매개 변수를 사용할 수 있습니다(예: 애플리케이션 내의 제어 블록에 대한 포인터).

    Host Integration Server를 사용하면 TP가 SEND_DATA 형식 멤버를 지정하고 동사를 AP_SEND_DATA_DEALLOC_FLUSH, AP_SEND_DATA_DEALLOC_SYNC_LEVEL, AP_SEND_DATA_DEALLOC_ABENDAP_SEND_DATA_DEALLOC_CONFIRMMC_SEND_DATA 데이터를 보낸 직후에 대화를 할당 취소할 수 있습니다. 그러나 SEND_DATAMC_SEND_DATA 동사에는 암시적 무시 콜백 함수가 포함되어 있지 않습니다. 묵시적 잊어버리기 알림을 받으려는 TP는 DEALLOCATE 또는 MC_DEALLOCATE 동사를 명시적으로 발급해야 합니다.