-
Data: 2012-11-28 21:06:39
Temat: Re: [n00b] pytanie z jawy
Od: Andrzej Jarzabek <a...@g...com> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]On 28/11/2012 11:04, kenobi wrote:
> Mam pytanie dot jawy. Dosyc slabo znam
> jawe (ale ze jako tako znam tematy z ogolnego
> programowania to jak trzeba cos tam moge sklecic)
> i ostatnio sie jej wlasnie przygladam, dokonujac
> przy tym paru obserwacji (dosyc banalnych zreszta zapewne) powstaje przy tym dla
mnie przy okazji tego studiowania javy zasadnicze pytanie :
>
> Czy te rozmaite wysokopoziomowe myki tj konkretnie widze na dany moment dwa
>
> 1) rozmaite 'nie zwalnianie' obiektow,
> 2) rozmaite 'przekazywanie' (i wrappowanie) obiektow itp
>
> sa w jawie 'bezpieczne'?
Tak, obiektów nie musisz, a nawet nie możesz jawnie zwalniać, robi to za
ciebie GC.
> Tj mam na mysli wszelkie sytuacje gdzie nie przejmuje sie zwalnianiem czegokolwiek
Obiektów nie musisz zwalniać, natomias "cokolwiek" można różnie rozumieć
- są inne rodzaje zasobów, które trzeba odpowiednio zwalniać.
> (np w danej konkretnej sytuacji mam tablice[][] z pixelami ale zeby to wyswietlic
musze to opakowac w image pozniej wyswietlic, poniewaz robie to w kazdej ramce to po
prostu tworze nowy image za kazdym razem nie przejmujac sie starym i nie zwalniajac
go)
Nie musisz zwalniać, ale musisz przypilnować, że nie trzymasz referencji
do starych image'ów.
> podobnie jest z przekazywaniem i robieniem najrozmaitrzej sieczki wrapperow,
powiedzmy ze
> mam jeden oryginalny kawalek danych z pixelami, czy
> pakujac to w najrozmaitsze obiekty po drodze zeby
> cos zrobic wyswietlic, zapisac na dysk, itp
> mam gwarancje ze dane te nie beda topornie kopiowane
> tylko ze to wszystko beda lekkie operacje?
Kopiowanie będziesz miał wtedy, kiedy skopiujesz obiekt, np. metodą
clone(). Operacja wrapper.bebechy = mojObiekt nie kopiuje obiektów,
tylko ustawia referencję (to coś takiego jak wskaźnik) na istniejący obiekt.
Natomiast w zależności od tego, jak masz skonfigurowaną maszynę
wirtualną, sama operacja GC może powodować kopiowanie danych między
różnymi generacjami sterty. Ogólnie jeśli się chce optymalizować
programy w Javie pod względem wydajności warto wiedzieć jak działa GC i
z jakich strategii można korzystać. W większości przypadkó nie jest to
potrzebne.
> tj czy jawie mozna zaufac ze nmie przejmujac sie
> problemem zwalniania i problemem przekazywania i wrappowania poradzi sobie ona tj
nie wykona jakichs
> masywnych duplikatow (albo jakichs innych pokrewnych
> zarzynek). mam nadzieje ze moje pytanie jest
> zrozumiale, a jesli nie i jawa moze wykonac taką zarzynkę to prosilbym najlepiej o
konkretny przyklad takiej zarzyny ze strony jawy. tnx
Przykładow możesz mieć zarzynkę z powodu stop-the-workd GC, co ma
miejsce w przypadku przepełnienia którejś tam generacji sterty.
Następne wpisy z tego wątku
- 28.11.12 22:22 e...@g...com
- 28.11.12 22:47 e...@g...com
- 29.11.12 11:29 kenobi
- 30.11.12 23:35 AK
- 01.12.12 12:17 Baranosiu
- 01.12.12 12:33 Baranosiu
- 01.12.12 14:12 e...@g...com
- 01.12.12 14:25 Baranosiu
- 01.12.12 22:09 AK
- 01.12.12 23:07 e...@g...com
- 01.12.12 23:14 e...@g...com
- 03.12.12 04:15 Baranosiu
- 03.12.12 04:34 Baranosiu
- 03.12.12 09:11 AK
Najnowsze wątki z tej grupy
- "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)
- testy-wyd-sort - Podsumowanie
- Tworzenie Programów Nieuprzywilejowanych Opartych Na Wtyczkach
- Do czego nadaje się QDockWidget z bibl. Qt?
- Bibl. Qt jest sztucznie ograniczona - jest nieprzydatna do celów komercyjnych
- Co sciaga kretynow
- AEiC 2024 - Ada-Europe conference - Deadlines Approaching
- Jakie są dobre zasady programowania programów opartych na wtyczkach?
Najnowsze wątki
- 2025-03-31 Kraków => IT Expert (Network Systems area) <=
- 2025-03-31 Białystok => NMS System Administrator <=
- 2025-03-31 Częstochowa => Product Manager - Systemy infrastruktury teleinformaty
- 2025-03-31 Sąd/Sędzia odrzuca wniosek o 30d aresztu Ziobry i jedzie po PO-Komisji Sroki [i Ziobrze w GW wersji]
- 2025-03-31 Warszawa => Sales Executive / KAM <=
- 2025-03-31 Warszawa => International Freight Forwarder <=
- 2025-03-31 Re: Państewko prawka Rumunia czyli pokaz UE leworządności - lider unieważnionych wyborów niedopuszczony do powtórki
- 2025-03-31 Dęblin => JavaScript / Node / Fullstack Developer <=
- 2025-03-31 Re: Kompensacja mocy biernej przy 230VAC
- 2025-03-31 Re: Kompensacja mocy biernej przy 230VAC
- 2025-03-31 Wrocław => Senior Backend Developer <=
- 2025-03-31 Białystok => Generative AI Engineer <=
- 2025-03-31 China-Kraków => Key Account Manager IT <=
- 2025-03-31 Prawne ciekawostki: Ksiądz KRK wygrał ze swoim biskupem sprawę o "naruszenie dóbr osobistych" [SN oddalił kasacje]
- 2025-03-31 Podatek od "konta wspólnego"