Simple HTML DOM Parser メモリの開放

2011/06/07

Simple HTML DOM Parserでメモリを開放しているにも関わらず、開放しきれていない。
「メモリリーク」っていう状態に陥っているっぽい。

Simple HTML DOM Parserでメモリの開放について

clear()で完全に開放されないようなら、PHP5.3以上にする。
もしくは、諦める。

メモ

当初は「unset()」をやっていたんだけど、まったくもってメモリが開放されていなかった。
調べると[Simple HTML DOM Parser]では「clear()」を使うってのがあった。
当初は「clear()」で良かったんだけど…素晴らしいぐらい悪ふざけなサイトに遭遇してしまい「メモリリーク」っていう状態に…。

さらに調べると[Simple HTML DOM Parser]は「循環参照」ってヤツを使っているらしい。
excelでも同じようなのがあるけど…それに似たようなヤツっぽい。同じヤツかも…。

さらに調べると…「循環参照」しているヤツらのメモリの開放の方法は、前述の「PHP5.3」以上にする。
※「5.3.2」だか「5.3.3」あたりにしないとバグが多いらしく使えたモノじゃないとか。
コレが無理なら「諦める」という方法。私の場合はPHPのバージョンアップはちと不都合があるので「諦める」という手法を選ぶことにした。

メモリリークとは【memory leak】

コンピュータの動作中に、使用可能なメモリ容量がだんだん減っていく現象。OSやアプリケーションソフトが処理のために占有したメモリ領域を、なんらかの理由で解放しないまま放置してしまうために起きる。多くの場合、OSのメモリ管理方法に問題があったり、アプリケーションソフトに不具合(バグ)が残っていたりすることが原因である。メモリリークにより利用可能なメモリ領域が減少すると、システムの性能が低下したり、不安定になったりする。これを解消するには、システムを再起動する必要がある。
メモリリークとは【memory leak】 – 意味/解説/説明/定義 : IT用語辞典より

新着(ニュース関連以外)

2017-08-03
formのinputでmaxlengthを使うとFirefoxでバグってた。他のブラウザでも気づかずにバグってたかもしれない。
2017-07-19
折れ線グラフをもう少しゆるやかに・・・というか何というか・・・調べていくと「移動平均」っていう言葉にたどり着いた
2017-07-10
FuelPHPの1.8をダウンロードして使っていたらセッションが使えないということに気付いた。
2017-06-27
MACにWin10をインストールしてみた:再挑戦。
2017-06-25
「簡単」っていうヤツらが多いけど・・・難しいぞ。