![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 144 Pomógł: 0 Dołączył: 10.07.2006 Ostrzeżenie: (0%) ![]() ![]() |
Jestem w trakcie robienia aplikacji opartej w dużej części na JS i danych w formacie JSON, wykorzystuję do tego jQuery 1.3
chciałem zobaczyć jak to będzie działac w dłuższym okresie czasu i zapuściłem jakies dane testowe - uruchomiłem program i zostawiłem komputer - o ile sam program działał to jak sprawdziłem użycie pamięci przez przeglądarkę (FF) to z 100MB podskoczyło do 1,4GB tak 14x pewnie to nie jest normalne i coś robię źle, ale co? ogólnie aplikacja wygląda następująco prócz jQuery są jeszcze 4 klasy, na podstawie tych klas jest stworzonych 6 obiektów, we właściwościach tych obiektów sa pojedyncze zmienne (int), a JSON jest najczęściej argumentem metody wywoływanej dla danego obiektu, prócz tego są dwa JSON-y globalne ładowane na początku aplikacji nie chcę wklejać całego kodu JS, bo to szkoda i miejsca i czasu - ale mam pytanie, na co zwrócić uwagę, co mogę zmienić, poprawić ulepszyć no chyba że takie zachowanie jest normalne (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 144 Pomógł: 0 Dołączył: 10.07.2006 Ostrzeżenie: (0%) ![]() ![]() |
wycieki pamięci w JS? niby cos musi "trzymać" zmienną i cały czas tworzyć nową - inaczej by zadziałał garbage collector
co więcej - zauwazyłem, że nawet jak nic się nie dzieje to uzycie pamięci rośnie - może się coś dzieje, ale nie jestem tego świadomy? odpaliłem Safari 4 - przyrost był mniejszy i co więcej gdy np miałem już iles tam MB to jak dałem minimalizację to schodziło do 16-11MB potem przy maksymalizacji skakało do jakiś 28-33MB potem coś tam robiłem - rosło, ale wystarczyło że zminimalizuję/zmaksymalizuję i wracało do jako takiej normy w przypadku FF takiej bajery z min/max nie ma sprawdziłem też na Operze 9.64 - najmniej zużywa pamięci tak między 2/3 a 3/4 tego co Safari 4, a dodtakowo wystepuje bajer z min/max czy to ma coś wspólnego z rysowaniem i odświerzaniem ekranu - przyznam, że mam trochę ruchomych rzewczy, jais wykres na płótnie, trochę divów absolutnych i takie tam, troche ajaxa itp itd dla porównania zapuściłem sobie mapy googla i tak sobie porównalem i zobaczyłem, że przy poruszaniu się też jest tam przyrost pamięci - co prawna ja nie mam map, ani tylu zmian, ale czy pryczyna może tkwić w zmianie rzeczy widzialnych dla uzytkownika Czas wykonania (30.094ms, 1837 wywołań) Czas wykonania (31.14ms, 1641 wywołań) Czas wykonania (27.295ms, 1643 wywołań) Czas wykonania (29.509ms, 1743 wywołań) Czas wykonania (29.189ms, 1643 wywołań) Czas wykonania (29.2ms, 1643 wywołań) Czas wykonania (29.204ms, 1642 wywołań) Czas wykonania (29.729ms, 1643 wywołań) Czas wykonania (29.392ms, 1642 wywołań) co do czasu wywoływania - powyższe zestawienie polegało na czekaniu na wykonie akcji poprzez jakiś timer w JS (wykonywanie cykliczne) chyba nie jest źle i to chyba świadczy, źle o JS? w tym czasie uzycie pamieci wzrosło z 68 do 126MB (FF) nie wiem może, ktos na tej podstawie będzie mógł coś więcej powiedzieć Ten post edytował juzwa 16.06.2009, 12:02:27 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 11.10.2025 - 07:09 |