eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.comp.programmingInterfejsy a garbage collectorRe: Interfejsy a garbage collector
  • Path: news-archive.icm.edu.pl!news.gazeta.pl!not-for-mail
    From: "Borneq" <b...@a...hidden.pl>
    Newsgroups: pl.comp.programming
    Subject: Re: Interfejsy a garbage collector
    Date: Thu, 24 May 2012 06:28:14 +0200
    Organization: "Portal Gazeta.pl -> http://www.gazeta.pl"
    Lines: 34
    Message-ID: <jpkdd1$ogc$1@inews.gazeta.pl>
    References: <jpjpi1$sd1$1@inews.gazeta.pl> <jpk0rc$922$1@inews.gazeta.pl>
    NNTP-Posting-Host: 194.117.241.226
    X-Trace: inews.gazeta.pl 1337833697 25100 194.117.241.226 (24 May 2012 04:28:17 GMT)
    X-Complaints-To: u...@a...pl
    NNTP-Posting-Date: Thu, 24 May 2012 04:28:17 +0000 (UTC)
    X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.6157
    X-Priority: 3
    X-RFC2646: Format=Flowed; Original
    X-User: bornega
    X-Antivirus: avast! (VPS 120523-1, 2012-05-23), Outbound message
    X-MSMail-Priority: Normal
    X-Antivirus-Status: Clean
    X-Newsreader: Microsoft Outlook Express 6.00.2900.5931
    Xref: news-archive.icm.edu.pl pl.comp.programming:197427
    [ ukryj nagłówki ]

    Użytkownik "M.M. " <m...@N...gazeta.pl> napisał w wiadomości
    news:jpk0rc$922$1@inews.gazeta.pl...
    >> A co się dzieje gdy jest Garbage Collector i zwalniane są w
    >> inny sposób?
    > Nie rozumiem czego się obawiasz. Gdy jest zero to są
    > zwalniane, a sposób w jaki są zwalnianie nie ma znaczenia.

    Czy w językach z GC można zwalniać przez delete? Czy też raczej nie stosuje
    się tego, bo po delete zostaną wiszące referencje, a zwolnienie obiektu z
    interfejsem przez licznik tego nie powoduje. Jednak co gdy mamy GC
    przenoszący dane do ciąglego obszaru przy zwalnianiu aby maksymalnie
    przyśpieszyc alokację? Czy tylko takie zwalnianie bez GC to zmiana flagi na
    "zwolnione" ale bez odzyskania pamieci?

    > Aby było skuteczne, Release i dekrementacja licznika musi zachodzić
    > rekurencyjnie. W tym przypadku Release musi być wywołana dla każdego
    > pola wskazującego na inne obiekty.

    A co gdy powstają cykle? Klasa C dziedzicząca interfejs ma pole klasy C. A
    obiekt p0 wskazuje na p1 a p1 na p0.

    Pozdrawiam

    Chciałem się jeszcze dopytać o kolektory przenoszące Mark & compact. Wtedy
    alokacja jest łyskawiczna, jedynie przesunięcie wskaźnika i można sobie
    darować obiektu bez alokacji na stosie. Ale co ze zwalnianiem, takie
    kopiowanie moze znacznie spowolnić. I jak to jest robione, dla dużych
    obiektów opłacało by się mieć tablicę wskaźników pośrednich, która była by
    zmieniana (pozostają problemy gdy taka tablica rośnie, Realloc - tu już nie
    można jedynie przesuwać wskaźnika) A co z mniejszymi? Wypadałoby że tak
    samo, bo jak inaczej? Trzeba by modyfikowac wszystkie pola gdzie sa
    wskaźniki wstecznie a wskaźnik jest jednokierunkowy.


Podziel się

Poleć ten post znajomemu poleć

Wydrukuj ten post drukuj


Następne wpisy z tego wątku

Najnowsze wątki z tej grupy


Najnowsze wątki

Szukaj w grupach

Eksperci egospodarka.pl

1 1 1

Wpisz nazwę miasta, dla którego chcesz znaleźć jednostkę ZUS.

Wzory dokumentów

Bezpłatne wzory dokumentów i formularzy.
Wyszukaj i pobierz za darmo: