CtxKill

 

コンテキストの中断

コンテキストテーブルに存在する任意のコンテキストを削除します。

この関数は、終了処理やDLLの呼び出しなどの一定の処理の終了を待っているアクティブなコンテキストを終了させる場合に使用します。

構文:

CtxKill (エントリ,コンテキスト)

パラメータ:

  • エントリ …… コンテキストを表す番号。コンテキストテーブル上の番号か、実行中のコンテキストIDのどちらかを指定します。

  • コンテキスト …… 論理値を指定します。「True」が設定された場合、指定されたスレッドが外部リソースをのアクセスによってビジー中であってもコンテキストは削除されます。この場合、リソースがロックされたままになる危険性が発生します。

戻り値:

論理値 …… 処理に成功した場合「True」が返ります。

以下のような場合、処理は失敗します。

  • コンテキストが見つからない場合

注意事項:

  • 実行中のコンテキストは、[コールUDP]処理コマンドのような同期型の外部処理を含め、現在の実行中であっても終了させることができます。

  • CtxKill関数は、指定したコンテキストの全ての実行中のスレッドを終了させます。実行中のスレッドの終了によって、データベース接続やインスタンス化されたJavaやCOMオブジェクトのようなリソースの不適切な解放処理を行ってしまう可能性があります。(突然エンジンを終了させたような状態になります。)

  • 旧バージョンからの移行を行うと、CtxKill関数は(CtxCloseにではなく)現バージョンでのCtxKil関数になります。

  • CtxKill関数を実行する前に、CtxNum関数を実行してコンテキストリストを再読込してください。

関連トピック:

CtxClose