Firefoxが重くて「警告:応答のないスクリプト」とダイアログが出て固まる時の対処法

Firefoxは基本的に重いブラウザではあります。

けれども、最近尋常じゃないくらいFirefoxが重くて、タブを一度に大量に閉じたときなどには、以下のような「警告:応答のないスクリプト」と表示されて固まってしまうことがあります。

警告:応答のないスクリプト

しかも、このダイアログのタチの悪いところは、以下のように「次回からは確認しない」にチェックを入れても、全く関係なく毎回毎回処理が途中で中断されてしまうという点です。

警告:応答のないスクリプト(チェック付)

こういった状態が毎日毎日続くので、さすがに我慢しきれなくなったので、対処することにしました。

で、僕の場合はこれらの対処法で問題が解決されたので、そのやり方を書き記しときたいと思います。

今回の方法は、あくまで僕の環境の対処法なので.お使いのFirefox環境によっては今回のやり方では改善されない可能性もあるのでご了承ください。

Photo by Mohamed Saeed

スポンサーリンク
レクタングル(大)広告

対処法1.不要なアドオンはすべて無効にする

とりあえず、アドオンは1度利用状況を確認してみる必要はあると思います。

それで、全く使用していなかったり、ほとんど使用していないアドオンは「無効化」もしくは「削除」してしまいます。

アドオンの設定を見返すには、Firefoxのメニューボタンから「アドオン」を選択してください。

Firefoxのメニューボタンからアドオンを選択

「拡張機能」を選択するとアドオン一覧が表示されます。

Firefoxの拡張機能一覧

アドオン一覧を確認してみて、不要なアドオンがあれば「無効化」もしくは「削除」ボタンから、すべて無効化してしまいます。

不要なアドオンは、無効化もしくは削除する

あとは、再起動をすればOKです。

個人的に、「メモリ開放系」のアドオンなどは、Firefoxを重くする原因になるので、無効化(削除)しておいた方が良いかと思います。

対処法2.スクリプトをより長い時間実行させる

デフォルト状態だとスクリプトが10秒間実行されたら以下のようなダイアログが表示されるようになっています。

警告:応答のないスクリプト

このスクリプトの実行時間を、もう少し長くしてあることで、「ダイアログが表示されることで処理が止まってしまう」なんてことを防ぐことができます。

僕の場合、Firefoxのタブを大量に閉じたときに、警告ダイアログが表示されるのですが、これが出てしまうと「タブを閉じる動作」が途中でストップしてしまいます。しかも、「処理を続行」ボタンを押しても、また表示されることもあります。「スクリプトを停止」ボタンを押せば、復帰はできるのですが、これがまた、かなり時間がかかってしまい二度手間です。

ですので、「多少のスクリプト実行時間は長くなってしまっても、ダイアログにより処理が途中で中断される」ことを防ぐことにより、無駄な操作や、待ち時間を減らす方法です。

スクリプト実行時間を長くする方法

スクリプトの実行時間を長くするには、アドレスバーに「about:config」と入力しEnterキーを押してください。

アドレスバーに「about:config」と入力

すると以下の用に「動作保証対象外になります!」といった警告文が出ますが、「危険を承知の上で使用する」ボタンをクリックしてください。

Firefoxで「動作保証対象外になります!」との警告文

すると以下のような設定一覧画面が表示されます。

Firefoxの設定一覧画面

「検索」と書かれた入力ボックスに「dom.max_script_run_time」と入力しEnterキーを押してください。

dom.max_script_run_time

すると、同名の設定が抽出されて表示されます。

設定名をダブルクリックすることで、整数値を入力するダイアログが表示されます。

スクリプト実行時間を設定するダイアログが表示

このダイアログに対して、スクリプトを実行する時間(秒)を設定します。

スクリプトの実行時間を60秒に設定

僕の場合は、多少時間は長くかかっても良いので、「ダイアログにより処理が途中でストップしてしまう」のだけは防ぎたかったので、長めの60秒に設定しました。通常なら、20~30秒でも十分かと思います(デフォルトは10秒)。

設定を完了したら「OK」ボタンを押してください。

もし上記の設定を行った事により、不具合が出たり、状態が改善されない場合は、設定項目を右クリックの後、「リセット」メニューを選択してください。
Firefoxのカスタマイズ設定項目の値をリセットする

まとめ

僕の環境では、今回の設定を行ったことにより、大量のタブを一度に閉じたとしても、途中でハングアップしダイアログが表示されて、ブラウザが固まってしまうということはなくなりました。

この設定だと、とりあえず大量のタブを閉じてしまえば、時間は多少かかろうとも、しばらく他の作業をしていれば、タブはすべて閉じられます。

ダイアログが出て処理が途中で止まってしまう場合だと、「処理の続行」なり「スクリプトの停止」なり操作をしてからまたしばらく待つ必要があったので、1度の作業で目的の操作を終えることができるようになったので、使い勝手が向上しました。

というわけで「大量にタブを閉じたときにダイアログが表示され処理が中断されてウザい」とか「警告:応答のないスクリプトダイアログをなるべく出さないようにしたい」なんて場合には、今回の設定を行うと、問題が解決されるかもしれません。