※質問するときは、「フォーラムの利用に関するご案内」、とりわけ「質問するときは」に目を通し、OS の種類や Firefox のバージョンといった使用環境についての最低限の情報を書き添えることをお勧めします。当方、プログラミングの専門知識を持たない一介のエンドユーザーですが、これまでの使用経験の中で知りえたことを述べさせていただきます。
あんこ さんが書きました:
表記のとおりです。 ウインドウスのタスクマネージャからFIREFOX全体を終了するのではなく、 そして、次回または次々回起動時に怪しいタブからチェックを外すのではなく、
応答しなくなった時点で原因タブだけ強制的に閉じる方法はないでしょうか?
あんこ さんが書きました:
「応答なし」となった時、「特定のタブ」を、「強制的に」閉じる方法は?
これは、Firefox 全体が「応答なし」(ハングアップ/フリーズ)となった時、Firefox の UI からは「特定のタブ」を閉じる操作がおこなえないので、
外部からの操作 で「強制的に」、「特定のタブ」だけを狙い打って閉じる方法はないのか ―― という意味でしょうか?
もしそうだとしたら、現在の正式リリース・バージョン(Firefox 47.0 / 45.2.0 ESR)では、そういう操作は無理です。
現在の正式リリース版 Firefox は、アプリケーション全体が1つのプロセスで動作しているはずです。
いわば、1つのウィンドウとその中に開いた複数のタブが、ひとまとまりのプロセスとして管理されているので、1つのタブで開いた Web ページが原因でハングアップしたとしても、問題を起こしたタブ(Web コンテンツ)だけを切り離して強制終了することは、残念ながらできない ―― ということになると思います。
あんこ さんが書きました:
タスクマネージャを見ると、原因タブとFIREFOX全体と、ふたつのタスクとして表現されています。
Windows のタスクマネージャーのことを仰っているのだと思いますが、Windows のバージョンによってタスクマネージャーの機能には違いがあります。とくに、Windows 7 までと Windows 8 以降では、見た目からしてけっこう変わっています。
仰っている表示状態は、Windows 8 以降のタスクマネージャーの [プロセス] パネルを見たときのことでしょうか?(少なくとも、Windows 7 までのタスクマネージャーはこういう表示にはらないはずですが...。)
A(実行中のプログラムの名称)
└ B(実行中のプロセス(?) -- Firefox の場合はアクティブなタブのタイトル)
という A-B 階層で表示されますが、必ずしも親プロセスと子プロセスを意味しているわけではありません。
A の部分は、文字通り実行中のプログラムの名称が表示されています。
B の部分は、そのプログラムで実行中のタスク(ウィンドウ?)をリストアップしているようです。
例えば、Firefox の1つのウィンドウで複数のタブを開いている場合、Firefox のウィンドウのタイトルバーにはアクティブなタブのタイトルが表示されますが、Windows のタスクマネージャーは B 部分でウィンドウのタイトルバーと同等のことを表示しているだけです。
ひとつのプログラムで複数のウィンドウを開いている場合、Windows のタスクマネージャーは個々のウィンドウをタスクとして別々に認識し、開かれているウィンドウの数だけ B 階層に表示します。(これを、厳密な意味で "プロセス" と呼んでいいのかどうかはわかりませんが...。)
A(実行中のプログラムの名称)
├ B1(実行中のプロセス(?) =ウィンドウ単位)
├ B2(実行中のプロセス(?) =ウィンドウ単位)
└ B3(実行中のプロセス(?) =ウィンドウ単位)
B* のうちの、どれか1つを [タスクの終了] で終わらせても、他のウィンドウは残ります。
これは、複数開いた Firefox のウィンドウの1つを [X] ボタンで閉じるのと同じことです。しかし、個々のウィンドウはシングルプロセスなので、1つのウィンドウ内に開かれたタブは一括して扱われます。(標準設定のままなら、複数のタブを持つウィンドウを閉じるときは警告が表示されるはずです。)
A に対して [タスクの終了] を実行すると、プログラム全体が終了され、すべてのウィンドウが閉じられます。
これは、複数開いた Firefox のウィンドウの1つで、[終了] を実行するのと同じことになります。
(他にも、別インスタンスでプログラムを実行するとか、その時の条件によってタスクマネージャーに表示される状態はいろいろ変化します。)
別の観点からいえば、ブラウザの各プロセスを外部からコントロールすることは、プロセスを管理するソフトウェアの性能にも左右されると思います。
Windows 標準の タスクマネージャーは、OS ネイティブの安心感はありますが、機能的には限られています。
サードパーティ製の同種製品の中には、かなり高度なことができるソフトウェアもあるようですから、マルチプロセスで動作しているブラウザの各プロセスを個別に終了させられるものがあるのかもしれません。しかし、当方は個々の製品の細部までは把握していません。
なにより、現役の Firefox はマルチプロセスではないので、仮に対応可能なタスクマネージャーがあったとしても、ご希望のような結果は出せないでしょう。
(補足)
Firefox の開発版では、Electrolysis(略称:e10s)と呼ばれるマルチプロセス機能が有効化され、テスト運用が続けられています。
e10s は、既存の Firefox との互換性を維持しつつマルチプロセス化することが難航し、当初予定よりも大幅に遅れているようですが、正式リリース版での有効化に向けて開発は継続されてます。
比較としていえば、Google Chrome とその派生ブラウザ(SRWare Iron など)は、後発組ということもあり、最初からマルチプロセスアーキテクチャーで設計されています。
この点をわかりやすく確認できるのは、Google Chrome の [その他のツール] -> [タスク マネージャ] でしょうか。
各タブを含む内部の個別プロセスが表示され、プロセスごと(つまりタブごと)の終了を実行できます。(ただし、ブラウザの [タスク マネージャ] を起動できない障害が発生した場合などに、どうなるかは知りません。)
マルチプロセスで動作するブラウザの場合、1つのタブがハングアップ(フリーズ)してもブラウザのウィンドウ全体がハングアップすることはないはずですから、外部から操作しなくても問題の起こったタブだけを閉じることはできると思います。
ただ、マルチプロセスで動く Google Chrome や開発版 Firefox であっても、外部からそのブラウザの特定プロセスをピンポイントで指定して強制終了させるには、それを実行できるだけの条件整備やそれなりのスキルが必要になるのではないでしょうか。(そもそも、各ブラウザにおけるタブの実装方法がすべて同一ということはないはずですから、何ができて何ができないかはブラウザごとに差異があるでしょうし...。)
とりあえず以上です。間違ったことを書いていたらすみません。
(オフトピ)
投稿時に使われたブラウザの User Agent から見ると、Windows XP をお使いのように見受けられます。
リスクを承知の上でお使いなら余計なお世話になってしまいますが、いちおうこういう場でのお約束なので一言書き添えておきます。
Windows XP は Microsoft がサポートを終了して久しい OS です。これを使い続けることは相応のリスクを抱え込むことになります。
アプリケーションまたは Web サービスによっては、新しいバージョンで XP のサポートを打ち切っていたり、仕様変更によって XP だと正常に動作しなくなるケースもありえます。今後そういう場面が増える可能性は高いので、十分ご注意ください。