|
|
マルチスレッド化またはマルチコンテキスト化されたアプリケーションを監視する
したがって、プログラマは、プロセス内の個々のスレッドが異常終了した可能性があることを認識する必要があります。1 つのスレッドが異常終了してシグナルが出されると、通常、そのスレッドが属する全体のプロセスが異常終了しているため、BBL により異常終了が検出されます。
ただし、スレッドの exit 関数を誤って呼び出したためにスレッドが異常終了した場合、シグナルは生成されません。スレッドが tpterm() を呼び出す前にこの種の異常終了が発生すると、BBL では異常終了を検出できず、異常終了したスレッドに関連するコンテキストの登録テーブル・スロットの割り当ては解除されません(スレッドの異常終了を検出できても、BBL は通常この登録テーブルのスロットの割り当て解除は行いません。スレッドが異常終了すると別のスレッドがコンテキストに関連付けられる、というアプリケーション・モデルがあるためです)。
この制限事項には適切な対応策がないため、プログラマはこの点を考慮してアプリケーションを設計する必要があります。
MIB を使用してマルチスレッド化またはマルチコンテキスト化されたアプリケーションのデータを取得する
注記 ここで説明する機能は、使用する管理ツールに関係なく、マルチスレッド化またはマルチコンテキスト化されたすべてのアプリケーションに適用されます。ここでは、MIB の呼び出しを使用する管理者の観点で機能を説明しています。MIB 用のインターフェイス (tmadmin(1) または BEA Administration Console) を使用する管理者も適用できます。
マルチスレッド化またはマルチコンテキスト化されたアプリケーションのデータは、次の方法で取得できます。
取得した情報は、以下の場所に格納されます。
たとえば、12 のサーバ・ディスパッチ・スレッドが同時に実行されている場合、このアプリケーション用の MIB の T_SERVERCTXT クラスには、12 のオカレンスを含む TA_CONTEXTID フィールド、12 のオカレンスを含む TA_SRVGRP フィールド、などが設定されます。
T_SERVER クラス内のフィールドに複数のインスタンスがあり、これらのインスタンスの値がマルチコンテキスト化されたサーバのコンテキストごとに異なる場合、T_SERVER クラスのフィールドにはダミーの値が指定され、T_SERVERCTXT フィールドには、各コンテキストの実際の値が指定されます。
関連項目
|
Copyright © 2001 BEA Systems, Inc. All rights reserved.
|