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用語辞典より