![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 189 Pomógł: 13 Dołączył: 20.09.2008 Skąd: Lublin Ostrzeżenie: (0%) ![]() ![]() |
problem polega na tym, że przy próbie uruchomienia skryptu dostaję błąd:
Cytat Allowed memory size of 134217728 bytes exhausted (tried to allocate 43 bytes) w projekcie stworzyłem 4 singletony. dwa z nich podczas tworzenia ustalają sobie jakieś parametry (ale to chyba nie jest ważne). dalej - w projekcie posiadam klasę "_controller". inne klasy mogą z niej dziedziczyć. gdy próbuję odpalić kod, który zawiera tworzenie obiektu $a (klasy "lol" dziedziczącej po "_controller"), dostaję wyżej wymieniony błąd. poniżej klasa controller:
a tu jeden z singletonów:
czy ktoś wie, w czym może być problem? edit: dodam, że po wywaleniu kodu odpowiedzialnego za przypisanie zawartości w konstruktorze klasy "_controller" wszystko idzie normalnie. kod "getInstance" jest prawie taki sam w każdym singletonie (nie licząc nazwy klasy przy wywołaniu "new"). Ten post edytował czychacz 28.04.2012, 15:01:04 |
|
|
![]() |
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 664 Pomógł: 169 Dołączył: 8.01.2010 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
Taki offtopic.
A dlaczego chcesz tutaj koniecznie mieć singletony? Rozumiem, że każda dziedzicząca klasa ma posiadać takie same (a dokładniej - te same) atrybuty. Ja bym zrobił coś takiego:
Atrybuty są statyczne, czyli dotyczą każdej klasy rozszerzającej rodzica. init() jest wywoływany tylko raz, gdy atrybuty jeszcze nie zostały zainicjalizowane. Dodatkowo unikasz tworzenia singletonów, co jest z pewnością na plus:) Ten post edytował bastard13 30.04.2012, 10:14:40 -------------------- |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 14.08.2025 - 19:41 |