Skip to content

画像タブが大量にある状態で「複数の画像を閉じる」を実行すると、ウインドウが長時間フリーズする #1522

Description

@ma8ma

画像タブが大量にある状態で「複数の画像を閉じる」を実行すると、ウインドウが長時間フリーズする

バグの説明

大量の画像タブを開いた状態で、右クリックメニューの「複数の画像を閉じる」→「全ての画像」を実行すると、1000個以上のタブを閉じる間、ウインドウが操作を受け付けなくなり、長時間フリーズします。

再現の方法

注意: この操作を実行すると、ウインドウが長時間フリーズします。強制終了が必要になる可能性があるため、事前にデータを保存してください。

  1. JDimを起動します。
  2. 以下のいずれかの方法で、画像を最低1000個以上開きます。
    • 画像が貼られているスレッドを開き、画像URLをクリックする。
    • メニューバーの「ファイル」>「URLを開く」、または Ctrl+O を押してダイアログを開き、画像URLを入力して「開く」を押す。
  3. 画像タブを右クリックし、「複数の画像を閉じる」>「全ての画像」を選択します。
  4. ウインドウがマウスやキーボードの入力を受け付けなくなり、フリーズします。
  5. 数分程度待つとフリーズ状態が解除され、画像タブがすべて閉じます。

やりたかったこと・期待する結果

画像タブを閉じている間もウインドウが応答し、他の操作(例:新しいタブを開く、設定を変更するなど)ができること。

スクリーンショット

画面表示の問題はないため、スクリーンショットはありません。

動作環境

[バージョン] JDim 0.14.0-alpha20250215(git:947216f464)
[ディストリ ] Ubuntu 24.10 (x86_64)
[パッケージ] バイナリ/ソース( <配布元> )
[ DE/WM ] KDE (Wayland)
[ gtkmm  ] 3.24.9
[ glibmm  ] 2.66.7
[ TLS lib ] GnuTLS 3.8.6
[オプション ] '--with-alsa''--with-pangolayout'
[ そ の 他 ] 

追加の情報

右クリックメニューの「複数の画像を閉じる」のサブメニューには「全ての画像」以外の項目もあります。
これらの項目も1000個以上の画像を閉じることができるため、同様の操作でフリーズすることを確認しました。

正確な計測はしていませんが、画像タブの数が増えるほどフリーズ時間が長くなる傾向があります。閉じるタブの数が2倍になっても、フリーズ時間が2倍になるとは限らず、非線形な関係があるように感じられます。例えば、タブ500個を閉じる場合と1000個を閉じる場合では、フリーズ時間は単純に2倍になるのではなく、大幅に延長されました。

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugバグの追跡

    Type

    No fields configured for Bug.

    Projects

    Status
    In Progress

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions