Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: PHP i zaallokowana pamięć
Forum PHP.pl > Forum > PHP
pantera
Jak skonfigurować php (plik php.ini/php.conf) lub apache (httpd.conf) aby po wykonaniu skryptu pamięć była zwalniana. Po zaallokowaniu dużej wielowymiarowej tablicy, zajmującej około 1MB i zakończeniu skryptu w menedżerze zadań Windows widzę, że ilośćz ajętej pamięci po zakończeniu skryptu zmniejszył się tylko nieznacznie, co gorsza, kolejne wywołania skryptu powodują tylko zwiększenie zajętego obszaru ... nie pomaga nawet wywolanie unset($tablica). Skrypt nie pozostaje zawieszony - kończy się.
Jeżeli nie da się tego zrobić w konfigu o jaką procedurą to wywołać.
Jabol
Nic na to nie poradzisz. Sprawdź czy Twoja wersja Apache/PHP nie ma jakiegoś zgłoszonego błedu zarządzania pamięcią. Tablice są alokowane dynamicznie i dealokowane dynamicznie - tzn. PHP zwalnia pamięc gdy ma na to ochote a nie jak skrypt przestaje działać. Raczej nie jest to błąd Twoje skryptu bo PHP po to jest językiem dynamicznie typowanym, aby wycieki pamięci nie były problemem piszących w PHP a piszących PHP. Także poczekaj parę minut. Gdy zajęta pamięć zacznie być potrzbna inny proces na pewno ją dostanie (chociaż, na Windowsie to nie wiem jak z tym będzie...).
pantera
Po około 400 wywołaniu skryptu otrzymałem tylko komunikat System ma za mało pamięci wirtualnej. CZy apache/2.0 oraz PHP/5.0 załatwią sprawę oraz czy są dostępne na windę.
dr_bonzo
Dostepne sa, ale czy rozwiaza problem?
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.