Bestätigungsverarbeitung
Die Reihenfolge der Ereignisse für die Bestätigungsverarbeitung sieht wie folgt aus:
Richten Sie die Synchronisierungsebene ein.
Senden Sie eine Bestätigungsanforderung.
Empfangen von Daten und Bestätigungsanforderung.
Antworten Auf die Bestätigungsanforderung.
Aufheben der Zuordnung der Unterhaltung.
Bei Der Bestätigungsverarbeitung sendet ein TP eine Bestätigungsanforderung mit den Daten; der Partner-TP bestätigt den Empfang der Daten oder gibt an, dass ein Fehler aufgetreten ist. Jedes Mal, wenn die beiden TPs eine Bestätigungsanforderung und -antwort austauschen, werden sie synchronisiert.
Hinweis
Obwohl dies im Beispiel in diesem Abschnitt nicht gezeigt wird, kann jedes TP Daten senden oder empfangen, unabhängig davon, ob das TP das aufrufende TP oder das aufrufende TP ist.
Im folgenden Beispiel wird die Bestätigungsverarbeitung veranschaulicht.
Ausgestellt vom aufrufenden TP | Ausgestellt vom bestimmbaren TP |
---|---|
TP_STARTED | |
MC_ALLOCATE | |
(synclevel=AP_CONFIRM_SYNC_LEVEL) | |
MC_SEND_DATA | |
(type=AP_SEND_DATA_CONFIRM) | |
RECEIVE_ALLOCATE | |
MC_RECEIVE_AND_WAIT | |
MC_SEND_DATA | |
(type=AP_SEND_DATA_DEALLOC_SYNC_LEVEL) | |
MC_RECEIVE_AND_WAIT | |
(primary_rc=AP_OK) | |
(rtn_status=AP_YES) | |
(what_rcvd= AP_DATA_COMPLETE_CONFIRM_ DEALLOCATE) | |
MC_CONFIRMED | |
TP_ENDED | TP_ENDED |
Einrichten der Synchronisierungsebene
Der synclevel-Parameter von MC_ALLOCATE bestimmt die Synchronisierungsebene der Unterhaltung. Es gibt drei mögliche Synchronisierungsebenen:
AP_NONE, unter der keine Bestätigungsverarbeitung erfolgt.
AP_CONFIRM_SYNC_LEVEL, unter denen die TPs die Bestätigung des Empfangs der Daten anfordern und auf Anfragen zur Bestätigung der Daten reagieren können.
AP_SYNCPT, unter der die TPs unter Sync Point Level 2-Unterstützung für die Bestätigung des Empfangs von Daten ausgeführt werden.
Senden einer Bestätigungsanforderung
MC_SEND_DATA mit typ AP_SEND_DATA_CONFIRM hat zwei Auswirkungen:
Der Sendepuffer der lokalen LU wird geleert und alle im Puffer enthaltenen Daten an das Partner-TP gesendet.
Sie sendet eine Bestätigungsanforderung, die der Partner-TP über den what_rcvd-Parameter eines Empfangsverbs empfängt.
Nach der Ausgabe MC_SEND_DATA wartet der lokale TP auf die Bestätigung des Partner-TP.
Empfangen von Daten und Bestätigungsanforderung
Der parameter what_rcvd von MC_RECEIVE_AND_WAIT gibt Folgendes an:
Status der empfangenen Daten: vollständig oder unvollständig.
Zukünftige Verarbeitung des lokalen TP erwartet.
Im Beispiel wird what_rcvd AP_DATA_COMPLETE_CONFIRM, was angibt, dass die status abgeschlossen ist und eine Bestätigung angefordert wird.
Antworten auf eine Bestätigungsanforderung
Der Partner-TP gibt MC_CONFIRMED aus, um den Empfang der Daten zu bestätigen. Dadurch kann der lokale TP die Verarbeitung fortsetzen.
Aufheben der Zuordnung der Unterhaltung
MC_SEND_DATA sendet eine Bestätigungsanforderung mit den Daten, wenn alle folgenden Bedingungen erfüllt sind:
Die Synchronisierungsebene der Unterhaltung (festgelegt durch den synclevel-Parameter von MC_ALLOCATE) ist AP_CONFIRM_SYNC_LEVEL.
Der Typparameter von MC_SEND_DATA ist auf AP_SEND_DATA_DEALLOC_SYNC_LEVEL festgelegt.
Der what_rcvd-Parameter der endgültigen MC_RECEIVE_AND_WAIT ist AP_DATA_COMPLETE_CONFIRM_DEALLOCATE, was angibt, dass eine Bestätigung des Empfangs der Daten erforderlich ist, bevor APPC die Zuordnung der Unterhaltung aufgibt. Der lokale TP wartet auf diese Bestätigung, bis der Partner-TP MC_CONFIRMED ausgibt.