2024-12-12

anond:20241212105948

レイアウト行と物理行が一致しない問題はそれでいけそうなのでやってみる。

ただ、それ以前の問題として、巨大ファイルを読み込んでから閉じるとメモリー解放されないことに気づいた…。

どうも、gap_vectorに巨大ファイルを放り込むとLOHに放り込まれるようだ。

調べてみると、.NET場合、LOHに放り込まれると、ガベージコレクションの速度を上げるためか、LOHに放り込まれた奴はぎりぎりまでメモリーを開放しなくなる癖がある。

記事への反応 -
  • ファイルの中身をメモリーにおいていいなら、そこまで難しくはないな。 スクロールやキャレットの画面外の移動の時だけ、レイアウト行を構築すればそれでおしまい。 http://s170199.ppp.a...

    • しばらく使ってみたが、だめだ .NETだとLOHにgap_vectorの内容が放り込まれる関係で、すぐに解放されない .NETだと別のデーター構造のほうが適してるようだ すく思いついたやつ、B+木やB*木...

      • 裏で行数カウントさせて完了するまで行ジャンプ禁止にしようぜ

        • それっぽい感じにしてるが、巨大ファイルを読み込んでから閉じるとメモリーが解放されないんだよ…。 どうも、gap_vectorに巨大ファイルを放り込むとLOHに放り込まれる。 LOHに放り込ま...

記事への反応(ブックマークコメント)

ログイン ユーザー登録
ようこそ ゲスト さん