-
Data: 2013-07-11 13:45:05
Temat: Re: Why mobile web apps are slow
Od: Edek <e...@g...com> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]Dnia pamiętnego Thu, 11 Jul 2013 12:57:15 +0200, Michoo wyjmując peta
oznajmił:
> On 11.07.2013 10:04, Maciej Sobczak wrote:
>> W dniu czwartek, 11 lipca 2013 03:18:34 UTC+2 użytkownik A. L. napisał:
>> Ilość klas nie ma kompletnie żadnego znaczenia. Uzgodnijmy więc, że
>> masz ich 3 miliony, niech ten system wygląda jeszcze poważniej, nie
>> wpływa to na dalsze rozważania.
>
> Obawiam się, że w javie wcześniej trafisz na którąś z 16-bitowych ścian ;)
Jakich 16-bitowych ścian? Jedyne jakie znam są w formacie plików .class,
ale tu nie może chodzić akurat o te.
>>> Obiekty owych klas organizowane sa w struktury zwane "hypergraph".
>>
>> O, i to dopiero ma znaczenia. Nawet jeśli w programie jest tylko
>> jedna klasa.
>
> Tylko nadal pozostaje pytanie (ok, w javie się tego nie da inaczej,
> week-reference jest mało znane i upierdliwe w stosowaniu) jak wygląda
> ownership i czas życia obiektów?
Michoo, życzliwie: nie tygodniowa referencja, tylko słaba (weak).
Weak-rwfs może używa się niezbyt często, ale owszem, dla uniknięcia
memory leaków w Javie, najczęściej spowodowanych trzymaniem dużych
chmur obiektów od gc root porzez albo niezwalnianą instancję lub
statyczne pola klas, które nigdy nie przestają być potrzebne. Ja się
spotkałem z tym, że najczęstsze dwa miejsca to monitoring, który
trzyma weak-refs do obiektów będąc singletonem, i wszelkie formy
stosów.
> W przypadku bez GC zazwyczaj(oczywiście nie zawsze) na etapie tworzenia
> struktury danych mamy jakąś mapę/listę/tablicę w której umieszczamy nowo
> tworzone obiekty i z której je wyszukujemy tworząc kolejne krawędzie - w
> takiej sytuacji czas życia może być powiązany z tą strukturą.
>
> GC oczywiście daje możliwość zwalniania obiektów w czasie, gdy wypadają
> one z hipergrafu i jeżeli właśnie tego potrzebujemy, to jest to właśnie
> owo specyficzne zastosowanie w którym przy braku GC musielibyśmy je i
> tak napisać. Jeżeli natomiast nie potrzebujemy zwalniania obiektów w
> czasie pracy algorytmu to GC jest tylko zbędnym kosztem.
Dokładnie. W rpzypadku grafów najłatwiej jest użyć zwykłych tablic,
które zwalania się po zakończeniu, albo trzymać bitowe maski użycia
indeksu oraz stos najbliższej maski z wolnym indeksem. Robiliśmy
takie rzeczy dla grafów zajmujących kilkadziesiąt czy kilkaset GB.
Hipergraf różni się tylko dodatkowymi setami, co niczym nie odbiega
od dołączonych do zwykłego grafu informacji dodatkowych pod względem
samej struktury danych.
>> Z punktu widzenia mainstreamu pytanie jest następujące: czy GC
>> powinien być obowiązkowym elementem systemu, niezależnie od tego, co
>> ten system robi.
>
> Tu odpowiedź jest bolesna - tak, bo na rynku brakuje dobrych
> programistów i obawiam się, że spora grupa dostępnych nie poradzi sobie
> bez GC.
Czasami wystarcza odpowiedni framework i wzięcie programistów w kamasze
mówiąc "macie robić tak i tak, zawsze i wszędzie". Z jakiegoś powodu
programiści lubiący Javę nie lubią takich "ograniczeń wolności".
> Natomiast cały czas uważam, że język który z jednej strony zabierał z
> przed programisty konieczność zarządzania pamięcią ręcznie a z drugiej
> strony wymuszał odpowiednie ustalenie własności obiektów na etapie
> projektu byłby ciekawy.
Jestem mocno zaciekawiony. Mógłbyś rozwinąć, chyba że ktoś czegoś takiego
próbował i masz linka?
--
Edek
Następne wpisy z tego wątku
- 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
- 11.07.13 21:31 firr
- 11.07.13 21:45 R.e.m.e.K
- 11.07.13 21:48 Edek
- 11.07.13 21:55 bartekltg
- 11.07.13 22:00 Edek
- 11.07.13 22:04 firr
- 11.07.13 22:06 firr
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) <=