Есть фалы dbf. Один > 29000 записей. При работе срипта потребление памяти возрастает ~100МБ, причем если файл обрабатывать повторно в том же скрипте - еще +100Мб.
| Код | $this->dbfPhpId = dbase_open($this->path2dbf, 0); $dbase_numrecords = dbase_numrecords($this->dbfPhpId); $dbase_numfields = dbase_numfields($this->dbfPhpId); for($i=1; $i <= $dbase_numrecords; $i++){ if($row = dbase_get_record_with_names($this->dbfPhpId, $i)){ // continue; } } sleep(1); dbase_close($this->dbfPhpId);
|
Если убрать комментарии в условии if{...}, потребление памяти не возрастает
| Код | $this->dbfPhpId = dbase_open($this->path2dbf, 0); $dbase_numrecords = dbase_numrecords($this->dbfPhpId); $dbase_numfields = dbase_numfields($this->dbfPhpId); for($i=1; $i <= $dbase_numrecords; $i++){ if($row = dbase_get_record_with_names($this->dbfPhpId, $i)){ continue; } } sleep(1); dbase_close($this->dbfPhpId);
|
Проблема в том, что в моем скрипте в if'е идет нормальный код, но память все равно "отжирается". Где могут быть грабли? |