揃える

FLUSH動詞は、ローカル論理ユニットの (lu) 送信バッファーの内容を、パートナー LU およびトランザクションプログラム (TP) に送信します。 送信バッファーが空の場合は、何も行われません。

次の構造体では、 FLUSH 動詞で使用される動詞コントロールブロック (VCB) について説明します。

構文

  
struct 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;  
};   

メンバー

opcode
指定されたパラメーター。 動詞操作コード AP_B_FLUSH を指定します。

opext
指定されたパラメーター。 動詞操作の拡張機能、AP_BASIC_CONVERSATION を指定します。

reserv2
予約済みフィールド。

primary_rc
返されたパラメーター。 動詞の完了時に APPC によって設定されるプライマリ リターン コードを指定します。 有効なリターン コードは、発行された APPC 動詞によって異なります。 この動詞の有効なエラーコードについては、「リターン コード」を参照してください。

secondary_rc
返されたパラメーター。 動詞の完了時に APPC によって設定されるセカンダリ リターン コードを指定します。 有効なリターン コードは、発行された APPC 動詞によって異なります。 この動詞の有効なエラーコードについては、「リターン コード」を参照してください。

tp_id
指定されたパラメーター。 ローカル TP を識別します。 このパラメーターの値は、呼び出し TP 内の TP_STARTED 、または呼び出された tp の RECEIVE_ALLOCATE によって返されます。

conv_id
指定されたパラメーター。 メッセージ交換の識別子を提供します。 このパラメーターの値は、呼び出し TP 内の 割り当て 、または呼び出された tp 内の RECEIVE_ALLOCATE によって返されます。

リターン コード

AP_OK
プライマリ リターン コード。動詞は正常に実行されました。

AP_PARAMETER_CHECK
プライマリ リターン コード。パラメーター エラーのため、動詞は実行されませんでした。

AP_BAD_CONV_ID

セカンダリリターンコード。 conv_id の値が、APPC によって割り当てられたメッセージ交換 id と一致しませんでした。

AP_BAD_TP_ID

セカンダリリターンコード。 tp_id の値が、APPC によって割り当てられた tp id と一致しませんでした。

AP_STATE_CHECK
プライマリ リターン コード。動詞は無効な状態で発行されたため、実行されませんでした。

AP_FLUSH_NOT_SEND_STATE

セカンダリリターンコード。メッセージ交換が送信状態ではありませんでした。

AP_COMM_SUBSYSTEM_ABENDED
プライマリ リターン コード。次のいずれかの条件を示します。

  • このメッセージ交換で使用されているノードで、ABEND が発生しました。

  • TP と PU 2.1 ノードの間の接続が切断されました (LAN エラー)。

  • TP のコンピューターの SnaBase で ABEND が発生しました。

    ABEND の理由を特定するには、システム管理者がエラー ログを調べる必要があります。

    AP_CONVERSATION_TYPE_MIXED
    プライマリリターンコード。TP は、基本とマップされたメッセージ交換動詞の両方を発行しました。 1つのメッセージ交換で発行できる型は1つだけです。

    AP_INVALID_VERB_SEGMENT
    プライマリ リターン コード。VCB がデータ セグメントの終わりを越えています。

    AP_STACK_TOO_SMALL
    プライマリ リターン コード。アプリケーションのスタック サイズが小さすぎて動詞を実行できません。 アプリケーションのスタック サイズを増やしてください。

    AP_CONV_BUSY
    プライマリリターンコード。メッセージ交換には、一度に1つの未処理のメッセージ交換動詞しか存在できません。 これは、ローカル TP に複数のスレッドがあり、複数のスレッドが同じ conv_idを使用して APPC 呼び出しを発行している場合に発生する可能性があります。

    AP_UNEXPECTED_DOS_ERROR
    プライマリ リターン コード。ローカル TP からの APPC 呼び出しの処理中に、オペレーティング システムから APPC にエラーが返されました。 オペレーティング システムのリターン コードは、secondary_rc 経由で返されます。 これは、Intel バイトスワップ順で表示されます。 問題が解決しない場合は、システム管理者に問い合わせてください。

解説

SEND_DATAによって処理されるデータは、次のいずれかの状況が発生するまで、ローカル LU の送信バッファーに蓄積されます。

  • ローカル TP は、 フラッシュ (または、LU の送信バッファーをフラッシュするその他の動詞) を発行します。

  • バッファーがいっぱいです。

    割り当てによって生成された要求もバッファーされます。

    この動詞が TP によって発行されると、メッセージ交換は SEND 状態である必要があります。

    状態の変更はありません。