Freigeben über


TP_ENDED

Das TP_ENDED Verb wird sowohl vom aufrufenden als auch vom aufgerufenen Transaktionsprogramm (TP) ausgegeben und benachrichtigt APPC, dass das TP beendet wird.

Microsoft® Windows® Version 3. x-System: Es wird empfohlen, die WinAsyncAPPC-Funktion anstelle der blockierenden Version dieses Aufrufs zu verwenden.

Die folgende Struktur beschreibt den verb control block (VCB), der vom TP_ENDED Verb verwendet wird.

Syntax

  
struct tp_ended {  
    unsigned short  opcode;  
    unsigned char   opext;  
    unsigned char   reserv2;  
    unsigned short  primary_rc;  
    unsigned long   secondary_rc;  
    unsigned char   tp_id[8];  
    unsigned char   type;  
};   

Member

opcode
Angegebener Parameter. Gibt den Code des Verbvorgangs AP_TP_ENDED an.

opext
Angegebener Parameter. Gibt die Verbvorgangserweiterung an. Dieses Feld wird nicht vom TP_ENDED Verb verwendet.

reserv2
Ein reserviertes Feld.

primary_rc
Zurückgegebener Parameter. Gibt den primären Rückgabecode an, der von APPC nach Abschluss des Verbs festgelegt wird. Die gültigen Rückgabecodes variieren je nach ausgegebenem APPC-Verb. Gültige Fehlercodes für dieses Verb finden Sie unter „Rückgabecodes“.

secondary_rc
Zurückgegebener Parameter. Gibt den sekundären Rückgabecode an, der von APPC nach Abschluss des Verbs festgelegt wird. Die gültigen Rückgabecodes variieren je nach ausgegebenem APPC-Verb. Gültige Fehlercodes für dieses Verb finden Sie unter „Rückgabecodes“.

tp_id
Angegebener Parameter. Identifiziert den lokalen TP. Der Wert dieses Parameters wurde von TP_STARTED im aufrufenden TP oder von RECEIVE_ALLOCATE im aufgerufenen TP zurückgegeben.

type
Angegebener Parameter. Gibt den Typ der auszuführenden Beendigung an. Die folgenden Werte sind zulässig:

  • AP_HARD gibt an, dass alle aktiven Verben für das TP beendet sind; die von den Konversationen verwendeten Sitzungen werden beendet. Sowohl das lokale TP als auch das Partner-TP können Rückgabecodes für Konversationsfehler empfangen (AP_DEALLOC_ABEND für zugeordnete Unterhaltungen und AP_DEALLOC_ABEND_PROG für einfache Unterhaltungen).

  • AP_SOFT gibt an, dass der TP auf den Abschluss aller aktiven Verben wartet. Die sitzung, die von der Unterhaltung verwendet wird, bleibt aktiv.

Rückgabecodes

AP_OK
Primärer Rückgabecode; das Verb wurde erfolgreich ausgeführt.

AP_PARAMETER_CHECK
Primärer Rückgabecode; das Verb wurde aufgrund eines Parameterfehlers nicht ausgeführt.

AP_BAD_TP_ID

Sekundärer Rückgabecode; APPC hat den tp_id nicht als zugewiesenen TP-Bezeichner erkannt.

AP_BAD_TYPE

Sekundärer Rückgabecode; Der angegebene Typwert wurde von APPC nicht erkannt.

AP_COMM_SUBSYSTEM_ABENDED
Primärer Rückgabecode; weist darauf hin, dass eine der folgenden Bedingungen aufgetreten ist:

  • Der von dieser Konversation verwendete Knoten hat einen ABEND gefunden.

  • Die Verbindung zwischen dem TP und dem PU 2.1-Knoten wurde unterbrochen (LAN-Fehler).

  • SnaBase auf dem Computer des TP hat einen ABEND gefunden.

    Der Systemadministrator sollte das Fehlerprotokoll untersuchen, um den Grund für den ABEND zu ermitteln.

    AP_COMM_SUBSYSTEM_NOT_LOADED
    Primärer Rückgabecode; eine erforderliche Komponente konnte während der Verarbeitung des Verbs nicht geladen oder beendet werden. Folglich konnte die Kommunikation nicht stattfinden. Wenden Sie sich an den Systemadministrator, um Korrekturmaßnahmen zu ergreifen.

    AP_INVALID_VERB_SEGMENT
    Primärer Rückgabecode; der VCB wurde über das Ende des Datensegments hinaus erweitert.

    AP_STACK_TOO_SMALL
    Primärer Rückgabecode; die Stapelgröße der Anwendung ist zu klein, um das Verb auszuführen. Vergrößern Sie die Stapelgröße Ihrer Anwendung.

    AP_TP_BUSY
    Primärer Rückgabecode; die lokale TP hat APPC aufgerufen, während APPC einen weiteren Aufruf für denselben TP verarbeitet hat. Dies kann auftreten, wenn das lokale TP über mehrere Threads verfügt und mehr als ein Thread APPC-Aufrufe mit demselben tp_id ausgibt.

    AP_THREAD_BLOCKING
    Primärer Rückgabecode; der aufrufende Thread befindet sich bereits in einem blockierenden Aufruf.

    AP_UNEXPECTED_DOS_ERROR
    Primärer Rückgabecode; das Betriebssystem hat bei der Verarbeitung eines APPC-Aufrufs vom lokalen TP einen Fehler an APPC zurückgegeben. Der Rückgabecode des Betriebssystems wurde über secondary_rc zurückgegeben. Er wird in Intel-Bytetauschreihenfolge angezeigt. Wenn das Problem weiterhin besteht, wenden Sie sich an Ihren Systemadministrator.

Hinweise

Als Reaktion auf TP_ENDED gibt APPC die vom TP verwendeten Ressourcen frei. Nachdem dieses Verb ausgeführt wurde, ist der TP-Bezeichner nicht mehr gültig. der TP kann keine weiteren APPC-Konversationsverben ausgeben.

Die Konversation kann sich in einem beliebigen Zustand befinden, wenn das TP dieses Verb ausgibt.

Wenn sich die Unterhaltung im SEND-Zustand befindet, führt TP_ENDED die Funktion DEALLOCATE oder MC_DEALLOCATE aus, wobei dealloc_type auf AP_FLUSH festgelegt ist.

Wenn sich die Konversation in einem anderen Zustand als RESET oder SEND befindet, führt TP_ENDED die Funktion DEALLOCATE oder MC_DEALLOCATE aus, wobei dealloc_type auf AP_ABEND (für eine zugeordnete Unterhaltung) oder AP_ABEND_PROG (für eine einfache Unterhaltung) festgelegt ist.

Nach erfolgreicher Ausführung (primary_rc ist AP_OK), gibt es keinen APPC-Status.