![見出し画像](https://assets.st-note.com/production/uploads/images/98678410/rectangle_large_type_2_35999df9656672e0ab0a00f9ced706a0.png?width=800)
プログラマー探偵の事件簿:背景画像がメモリを蝕む
その事件は、2年の間、誰にも気づかれなかった。
助手の猫と共に、ポーリング辞典の解説動画を作っていた。
実際に監視で使っているTWSNMP FCを操作している時に、ある異変に気づいた。
何故か、ノードリストやポーリングリストの幅が狭くなっている。
![](https://assets.st-note.com/img/1677103810942-eOraNQ2Zpi.png?width=800)
ブラウザーの開発者ツールで見ても、幅の指定は間違っていない。
最近、追加した描画アイテムの影響かと思った。
しかし、同じように描画アイテムを表示している
開発用のTWSNMP FCの画面では、幅は変わらない。
なぜだ!
ブラウザーの開発者ツールを開いたまま、マップ描画を更新してみた。
すると、キャンバスのエレメントが増えて行くことに気づいた。
![](https://assets.st-note.com/img/1677103914548-0fQHJtnSHk.png?width=800)
これを見ていた助手の猫が一言、
「わしは、背景の画像を読み込む時の処理が怪しいと思う。」
たしかに、その処理で、新しいキャンバスを作っている。
最近、追加した描画アイテムのイメージの読み込みでは、
新しいキャンバスは作っていない。
試しに、背景画像を読み込む時に新しいキャンバスを作る処理(new P5())をやめてみた。
![](https://assets.st-note.com/img/1677103959714-h9bixplcyQ.png?width=800)
不可思議な現象は、ピタリとやんだ。
![](https://assets.st-note.com/img/1677103993021-HLUJldZErs.png?width=800)
そして、この問題はメモリーをも蝕む、重大な問題であった。
開発のための諸経費(機材、Appleの開発者、サーバー運用)に利用します。 ソフトウェアのマニュアルをnoteの記事で提供しています。 サポートによりnoteの運営にも貢献できるのでよろしくお願います。