4D v16.3

プロセスページ

ホーム

 
4D v16.3
プロセスページ

プロセスページ  


 

 

プロセスページでは消費CPU時間やデータベースが作成するプロセスの様々な情報を表示できます。また、それらのプロセスに対する複数のツールもあります(ただしシステムプロセスは除きます)。

4D Serverに関する注記: 4Dクライアントのランタイムエクスプローラーのプロセスページにはこのクライアントのプロセスが表示されます。4D Server管理ウィンドウのプロセスページを使用すればサーバーに接続しているすべてのクライアントのプロセスを制御できます。

各プロセスごとに以下の情報が表示されます:

  • プロセスタイプ(アイコン)
  • プロセス番号 (コマンドでプロセスを指定するために使用される番号)
  • プロセス名
  • プロセスの現在の状態
  • プロセスが開始されて以降の実行時間 (秒)
  • プロセスの消費CPU時間の割合

プロセスタイプはアイコンで識別できます。アイコンの色や形により、プロセスタイプは以下のようになります:

アプリケーションサーバ
SQL サーバ
DB4D サーバ (データベースエンジン)
Web サーバ
SOAP サーバ
保護された4D クライアントプロセス (接続した4D の開発プロセス)
メイン4Dクライアントプロセス (接続した4D のメインプロセス。クライアントマシン上で作成されたプロセスに対応するサーバプロセス。)
4D クライアント基本プロセス (4D クライアントプロセスと並列なプロセス。メイン4D クライアントプロセスをコントロールするプリエンプティブプロセス。)
予備プロセス (以前または未来の"4D クライアントデータベースプロセス")
SQL サーバーワーカープロセス
HTTP サーバーワーカープロセス
4D クライアントプロセス (接続した4D 上で実行しているプロセス)
ストアドプロシージャ (接続した4D により起動され、サーバ上で実行しているプロセス)
Web メソッド (4DACTION などにより起動)
Web メソッド (プリエンプティブ)
SOAP メソッド (Web サービスにより起動)
ロガー
TCP 接続リスナー
TCP セッションマネージャー
その他のプロセス
ワーカープロセス(コオペラティブ)
ストアドプロシージャー(プリエンプティブプロセス)
ワーカープロセス(プリエンプティブ)

: グループ毎にプロセスを表示オプションがチェックされていると、それぞれの4D クライアントメインプロセスと4D クライアント基本プロセスは一緒にグループ化されて表示されます。

各プロセスには作成順にユニークな番号が割り振られていています。アプリケーション開始時に4Dが起動するプロセスに最初の番号が割り当てられます。使用される数は起動時に実行されるサーバー機能の数によって変化します。

カスタムプロセスを開始すると、プロセスリストの最後に追加されるか、アボート済みの番号が割り当てられます。例えばプロセス番号8までが使用中で、プロセス番号7がアボートされていた場合、次に開始されるプロセスの番号は7になります。

注: (Webプロセスなど一部を除き) 処理が終了するとプロセスは自動で終了されます。ランタイムエクスプローラーを使用すると、処理終了前でもプロセスをアボートできます。プロセスのアボートについてはプロセスをアボートを参照してください。

New processExecute on serverコマンドを使用して新規プロセスを開始する際、プロセス名を指定することができます。引数として指定されたプロセス名はプロセスリストに表示されます。

コマンドにプロセス名を指定しなかった場合、4Dがデフォルト名を割り当てます。使用されるデフォルト名は、プロセスが開始された方法に基づき以下のとおりとなります:

  • メニューから開始されたプロセス: デフォルト名は"ML_プロセス番号"です (例えば"ML_7")。
  • メソッド実行ダイアログやメソッドエディターから開始されたプロセス: デフォルト名は"P_プロセス番号"です (例えば"P_7")。
  • プロセス名を指定せずにコマンドから開始されたプロセス: プロセス名は空です。

4D Serverに関する注記: プロセス名が"$"から始まる場合、それはローカルプロセスであり4D Server上のオブジェクトにアクセスする事はできません (グローバルプロセスとローカルプロセス参照)。

プロセスの状態とは、プロセスが実際行っていることを示す現在の実行状況です。

ランタイムエクスプローラに表示される各プロセス状態の説明は以下の通りです:

  • Executing: プロセスは現在実行中です。
  • Delayed: プロセスは指定された時間だけ遅延されています。プロセスが遅延されている間は処理時間を消費しません。プロセスを遅延させる方法については4Dランゲージリファレンスマニュアルを参照してください。
  • Waiting Event: プロセスはユーザーのアクション (ボタンのクリックやメニューの選択など) を待っています。
  • Waiting I/O: プロセスは何らかの入出力が発生するのを待っています。例えばレコードがディスクに保存されるのを待つなどの場合です。
  • Waiting Semaphore: プロセスは、内部プロセスが4Dデータベースタスクの実行を終了するのを待っています。
  • Paused: プロセスは実行の再開が指示されるまで一時停止しています。プロセスが一時停止されている間は処理時間を消費しません。詳細はプロセスの一時停止と再開を参照してください。
  • Aborted: プロセスは既に終了されています。プロセスがアボートされると4Dはロックされたレコードを解除、そのプロセスがまだ開いているすべてのトランザクションをキャンセル、そしてカレントセレクションやカレントレコードを解放します。プロセスは処理が終了すると自動でアボートされます。ランタイムエクスプローラーを使用して、処理完了前にアボートすることも可能です (プロセスをアボート参照)。
  • Hidden Modal Dialog: モーダルダイアログボックスを表示しているプロセスが非表示になっているため、ユーザーはそのダイアログボックスを見ることができません。プロセスはダイアログが表示されるまでこの状態のままです。

ランタイムエクスプローラーにはプロセスごとの処理時間が表示されます。プロセスの管理において、4Dは既存のプロセスに対し順番に処理時間を割り当てます。そのため処理時間とは、プロセスが起動されてから、そのプロセスが使用した総時間 (秒) のことであり、プロセス開始時からの経過時間ではありません。

CPUのパーセンテージは、4Dがそのプロセスにかけた時間を表します。更新頻度はコンテキストメニュー(行を右クリック)を使用して設定する事ができます:

更新頻度が高いほど、ランタイムエクスプローラーによってCPU時間が消費されていきます。

ランタイムエクスプローラーからプロセスを一時停止、再開、アボートできます。またプロセスをデバッグモードにすることもできます。さらに選択したプロセスを非表示にしたり、再表示したりできます。

これらの操作は、プロセスの一覧の下の方に表示されているコントロールボタンによって実行可能です。これらのボタンはプロセスのセレクションに対して有効です。一度に複数のプロセスを選択することもできます(Shift+クリックで連続したセレクション、または Command/Ctrl+クリックで連続していないセレクション)

注: コマンドを使用してプロセスを指定時間だけ遅延させることもできます。

プロセスの実行を一時的に停止させることができます。あるプロセスを一時停止することで他のプロセスにより多くの実行時間を割り当てたり、他のイベントを割り込ませたりすることができます。

例えばレコードセレクションを印刷するプロセスを開始したとします。しかしその中のレコードを変更する必要が生じました。そこでまずプロセスを一時停止し、レコードを変更したら、印刷プロセスを再開します。

  • プロセスを一時停止するには対象プロセスを選択して一時停止ボタン をクリックします。ランタイムエクスプローラー中でそのプロセスのステータスは自動的に"paused"に変更されます。明示的に再開が指示されるまでそのプロセスは一時停止されたままです。
  • プロセス実行を再開するには対象プロセスを選択して再開ボタン をクリックします。プロセスの状態は一時停止される直前の状態に戻ります。例えば一時停止される前そのプロセスの状態が"Executing"であった場合、プロセスは"Executing"状態で再開されます。プロセスがイベント待ちだった場合、再開後に又イベントを待ちます。

プロセスは処理が終了すると自動でアボートされます。しかしデバッグの目的で、処理の終了を待たずにプロセスをアボートしたい場合があるかもしれません。それ以外の理由ではいかなる場合でもアボートすべきではありません。処理の実行を停止するには、ランタイムエクスプローラー内でプロセスをアボートします。

プロセスがアボートされると4Dはレコードのロックを解除し、そのプロセス内で開始され閉じられていないトランザクションをキャンセルし、カレントセレクションやカレントレコードを解放します。

プロセスをアボートするには対象プロセスを選択しアボートボタン をクリックします。ランタイムエクスプローラー中のプロセス状態は自動で"aborted"になります。

4Dデバッガーを使用してプロセスの実行をモニターし、デバッグを行うことができます。

プロセスをデバッグモードにするには対象プロセスを選択しトレースボタン をクリックします。

プロセスが実行中であれば4Dのデバッグウィンドウが表示され、実行をステップしながらメソッド中で使用される式の値を確認し、デバッグを行うことができます。プロセスが一時停止中である場合、4Dはデバッグリクエストを記憶します。そのプロセスの実行が再開され次第デバッグウィンドウが表示されます。

デバッグウィンドウの使用方法については4Dランゲージリファレンスマニュアルを参照してください。

4Dが作成し管理する内部プロセスをトレースすることはできません。

アプリケーション環境においてプロセスを非表示にすることができます。プロセスが非表示にされるとそのプロセスで実行中のメニューやダイアログはユーザーに対し表示されなくなります。

プロセスの非表示は、後で再利用したいウィンドウを一時的に隠したい場合に有用です。ウィンドウを閉じるためにプロセスをアボートする代わりに、そのプロセスを非表示にすることができます。ウィンドウが隠されていてもプロセスは存在し続けます。

プロセスを隠すにはそのプロセスを選択し、オプションメニューから隠すを選択します:

結果プロセスはアプリケーション環境に表示されなくなります。隠されている間も実行は継続される点に留意してください。
画したプロセスをいつでも再表示できます。

プロセスを再表示するには表示ボタンをクリックします。するとそのプロセスはアプリケーション環境に再表示されます。

プロセス内で開かれているウィンドウを最前面にするには、そのプロセスを最前面にします。例えばアプリケーションプロセスを最前面にすると、アプリケーション環境がスクリーンの最前面となります。

どのユーザープロセスでも最前面にできます。プロセス内でウィンドウを開いている場合、そのウィンドウが最前面になります。ウィンドウにメニューバーが割り当てられていればそのメニューバーがカレントとなります。

プロセスを最前面にするにはそのプロセスを選択し、オプションメニューから前面にボタンをクリックします:

そのプロセス内で開かれているウィンドウがすべて最前面となります。さらに4Dは最前面プロセスウィンドウのメニューバーを表示します。

 
プロパティ 

プロダクト: 4D
テーマ: ランタイムエクスプローラー

 
履歴 

 
ARTICLE USAGE

デザインリファレンス ( 4D v16)
デザインリファレンス ( 4D v16.1)
デザインリファレンス ( 4D v16.3)