Freigeben über


MC_FLUSH

Das MC_FLUSH Verb sendet den Inhalt des Sendepuffers der lokalen logischen Einheit (LU) an die Partner-LU und das Transaktionsprogramm (TP). Wenn der Sendepuffer leer ist, wird keine Aktion ausgeführt.

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

Syntax

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

Member

opcode
Angegebener Parameter. Gibt den Verbvorgangscode AP_M_FLUSH an.

opext
Angegebener Parameter. Gibt die Verbvorgangserweiterung an, AP_MAPPED_CONVERSATION.

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 wird von TP_STARTED beim Aufrufen von TP oder von RECEIVE_ALLOCATE im aufgerufenen TP zurückgegeben.

conv_id
Angegebener Parameter. Stellt den Unterhaltungsbezeichner bereit. Der Wert dieses Parameters wird von MC_ALLOCATE beim Aufrufen von TP oder von RECEIVE_ALLOCATE im aufgerufenen TP zurückgegeben.

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_CONV_ID

Sekundärer Rückgabecode; Der Wert von conv_id stimmte nicht mit einem von APPC zugewiesenen Konversationsbezeichner überein.

AP_BAD_TP_ID

Sekundärer Rückgabecode; Der Wert von tp_id stimmte nicht mit einem TP-Bezeichner überein, der von APPC zugewiesen wurde.

AP_STATE_CHECK
Primärer Rückgabecode; das Verb wurde nicht ausgeführt, da es in einem ungültigen Zustand ausgegeben wurde.

AP_FLUSH_NOT_SEND_STATE

Sekundärer Rückgabecode; Die Unterhaltung befand sich nicht im SEND-Zustand.

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_CONVERSATION_TYPE_MIXED
    Primärer Rückgabecode; der TP hat sowohl grundlegende als auch zugeordnete Konversationsverben ausgegeben. In einer einzelnen Unterhaltung kann nur ein Typ ausgegeben werden.

    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_CONV_BUSY
    Primärer Rückgabecode; es kann jeweils nur ein ausstehendes Konversationsverb gleichzeitig geben. Dies kann auftreten, wenn das lokale TP über mehrere Threads verfügt und mehr als ein Thread APPC-Aufrufe mit demselben conv_id ausgibt.

    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

Die von MC_SEND_DATA verarbeiteten Daten werden im Sendepuffer der lokalen LU gesammelt, bis eine der folgenden Aktionen eintritt:

  • Die lokalen TP-Probleme MC_FLUSH (oder ein anderes Verb, das den Sendepuffer der LU leert).

  • Der Puffer ist voll.

    Die von MC_ALLOCATE generierte Anforderung wird ebenfalls gepuffert.

    Die Unterhaltung muss sich im SEND-Zustand befinden, wenn das TP dieses Verb ausgibt.

    Es gibt keine Zustandsänderung.