-
Data: 2013-07-11 11:23:38
Temat: Re: Why mobile web apps are slow
Od: Michoo <m...@v...pl> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]On 11.07.2013 02:10, bartekltg wrote:
> W dniu 2013-07-11 01:50, Michoo pisze:
>
>> Brak GC (czy fakultatywny GC jak w pythonie) nie oznacza brak menagera
>> pamięci. Można by spokojnie zrobić system/język/framework z
>> deterministycznym zarządzaniem pamięcią a jednocześnie kompaktowaniem
>> sterty, optymalizowaniem rozłożenia obiektów pod względem cache/etc.
>> Oczywiście wykrywanie cykli musi jakoś być rozwiązane czy to przez
>> zmuszenie programisty do używania week-reference (cykl==terminate nauczy
>> bardzo szybko) czy przez wykrywanie cykli (vide python).
>
> To terminate z powodu cyklu to na pewno dobry pomysł?
>
> Czasem zmusi to do zupełnie niepotrzebnego obchodzenia,
Tak. Jest to cena którą płacisz za deterministyczne sprzątanie śmieci.
GC też zazwyczaj daje też dużą wolność a w praktyce czasami zmusza do
zupełnie niepotrzebnego obchodzenia - nie ma rozwiązań do wszystkiego
idealnych.
> np w jakimś algorytmie na grafie skierowanym głownie usuwającym
> krawędzie.
Jak to robiłem w C++ to aby z jednej strony nie bawić się w ręczne
new/delete a z drugiej nie cieknąć pamięcią miałem w obiektach
opakowujących algorytmy std::vector<shared_ptr<T> > freeMeLater a sam
algorytm działał już na wskaźnikach. Było szybkie i dawało gwarancję, że
w momencie gdy dane przestaną być używane wszystko się ładnie sprzątnie.
>
>
>> Tak jak się zrobił w pewnym momencie hype na noSQL tak może i przyjdzie
>> czas na noGC. Może się nawet coś dobrego z tego wykluje.
>
> A ludzie od c++ w większości tak nie mają?
Ludzie od C++ w większości muszą pamiętać o pamięci. Użytkownicy GC w
większości nie muszą. Mi chodzi o to, żeby pamiętać jedynie o nie
zepsuciu pamięci (być może za cenę dodatkowego wektora tu i uwdzie[*]) a
reszta się zrobi sama.
[*] Zauważ, że w języku to może się robić automatycznie na zasadzie np
operatora lNew który tworzy obiekt i wiąże jego czas życia z opakowującą
funkcją czy klasą.
--
Pozdrawiam
Michoo
Następne wpisy z tego wątku
- 11.07.13 11:46 Stachu 'Dozzie' K.
- 11.07.13 11:49 Michoo
- 11.07.13 11:52 Michoo
- 11.07.13 11:54 Michoo
- 11.07.13 12:43 Marek Borowski
- 11.07.13 12:57 Michoo
- 11.07.13 13:45 Edek
- 11.07.13 17:17 A.L.
- 11.07.13 17:19 A.L.
- 11.07.13 17:52 bartekltg
- 11.07.13 18:20 Edek
- 11.07.13 18:41 firr
- 11.07.13 21:06 Edek
- 11.07.13 21:16 firr
- 11.07.13 21:24 Edek
Najnowsze wątki z tej grupy
- Brednie w wiki - hasło Dehomag
- Perfidne ataki krakerów z KRLD na skrypciarzy JS i Pajton
- Instytut IDEAS może zacząć działać: "Ma to być unikalny w europejskiej skali ośrodek badań nad sztuczną inteligencją."
- Instytut IDEAS może zacząć działać: "Ma to być unikalny w europejskiej skali ośrodek badań nad sztuczną inteligencją."
- Instytut IDEAS może zacząć działać: "Ma to być unikalny w europejskiej skali ośrodek badań nad sztuczną inteligencją."
- U nas propagują modę na SI, a w Chinach naukowcy SI po kolei umierają w wieku 40-50lat
- C++. Podróż Po Języku - komentarz
- "Wuj dobra rada" z KDAB rozważa: Choosing the Right Programming Language for Your Embedded Linux Device
- Nowa ustawa o ochronie praw autorskich - opis problemu i szkic ustawy
- Alg. kompresji LZW
- Popr. 14. Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- Arch. Prog. Nieuprzywilejowanych w pełnej wer. na nowej s. WWW energokod.pl
- 7. Raport Totaliztyczny: Sprawa Qt Group wer. 424
- TCL - problem z escape ostatniego \ w nawiasach {}
- Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
Najnowsze wątki
- 2025-05-03 gazowe kuchnie są znacznie bardziej szkodliwe dla zdrowia, niż dotychczas sądzono
- 2025-05-03 Czyli jednak elektryki są TANIE i powszechnie dostępne dla obywateli
- 2025-05-03 Elektryki do Morskiego Oka do utylizacji
- 2025-05-03 Crash testy na publicznej drodze - 4 BMW zderzone
- 2025-05-03 pojebane Google
- 2025-05-03 Brednie w wiki - hasło Dehomag
- 2025-05-03 gazowe kuchnie są znacznie bardziej szkodliwe dla zdrowia, niż dotychczas sądzono
- 2025-05-03 Chiny => Koordynator Produkcji / Przedstawiciel ds. rozwoju produktu <
- 2025-05-03 Gdańsk => Konsultant wdrożeniowy (systemy controlingowe) <=
- 2025-05-03 Warszawa => Frontend Developer (Angular13+) <=
- 2025-05-02 Gliwice => Business Development Manager - Network and Network Security
- 2025-05-02 Warszawa => Senior Frontend Developer (React + React Native) <=
- 2025-05-02 Polska => Senior Key Account Manager <=
- 2025-05-02 Warszawa => Senior Programmer C <=
- 2025-05-02 Gdańsk => Team Lead Data Engineer (Snowflake) <=