7.5.3 無秩序な切断の実行

エラーの発生により切断する唯一の方法は、tpdiscon(3c)関数を呼び出すことです(「プラグを抜くこと」と同じです)。この関数を呼び出すことができるのは、会話のイニシエータ(クライアント)のみです。

ノート:

この方法で会話を終了することはお薦めしません。アプリケーションを正常に終了するには、サブオーディネート(サーバー)がtpreturn()関数を呼び出す必要があります。

tpdiscon()関数の呼出しには、次のシグネチャを使用します。

int
tpdiscon(int cd)

cd引数は、接続が確立したときにtpconnect()関数によって返される接続記述子を指定します。

tpdiscon()関数は、接続の相手側のサービスに対してTPEV_DISCONIMMイベントを生成し、cdを無効にします。トランザクションが実行中の場合、そのトランザクションは中断され、データは失われます。

cdで接続の開始側と識別されていないサービスからtpdiscon()が呼び出されると、その呼出しは失敗し、エラー・コードTPEBADDESCが生成されます。

イベントおよびエラー・コードの全リストとその説明については、『Oracle Tuxedo ATMI C言語関数リファレンス』「tpdiscon(3c)」を参照してください。