Zend_Db_Table_Row bellek sızıntısı?

1 Cevap php

Elimdeki kodu:

<?php
$start = memory_get_usage();
$table = new Zend_Db_Table('user');
for ($i = 0; $i < 5; $i++) {
  $row = $table->createRow();
  $row->name = 'Test ' . $i;
  $row->save();
  unset($row);
  echo (memory_get_usage() - $start) . "\n";
}

Bu ne görüyorum:

90664
93384
96056
98728
101400

Bir bellek sızıntısı değil mi? Ben bir script veritabanına eklemek için 500 nesneler varsa ben bellek taşması alıyorum. Herkes yardımcı olabilir?

1 Cevap

Eğer 5 yerine 500 eklemek eğer bir bellek hatası alırsanız, gerçekten (çok, bazı önbelleğe alma olabilir) bir sızıntı olduğunu. Bellek kullanımı yerine aşağı ve yukarı tırmanıyor, bu normaldir: garbage collector yeniden belleği kurtararak.