🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: pl.comp.objects
Article #14712

Re: pule obiektów

#14712
From: Jarek Ratajski
Date: Thu, 25 May 2006 14:04
49 lines
3137 bytes
Sektor van Skijlen wrote:

> 
> Innymi słowy, odnoszę wrażenie że autorzy przyjmują milcząco, że tak sprawne
> zarządzanie pamięcią, jakie oferuje nam odśmiecanie jest możliwe tylko wtedy,
> gdy stosujemy "odśmiecany" model zarządzania obiektami, czyli inaczej mówiąc,
> gdy polegamy na niejawnym usuwaniu zgubionych obiektów w przypadku wszystkich
> istniejących obiektów w całym systemie. Przekonanie to jest moim zdaniem
> całkowicie błędne.
> 
> Po pierwsze, zupełnie nie rozumiem, dlaczego takie znów niemożliwe byłoby
> przyjęcie takiej strategii, że środowisko jest takie jakie, jak odśmiecane,
> tylko że nie dokonuje się automatyczne trackowanie obiektów, a jest ono
> uruchamiane dopiero w momencie zrobienia jawnego 'delete'. I to też
> niekoniecznie za każdym, tylko z odpowiednią amortyzacją. Włączając w to
> również możliwość przesuwania obiektów.
Można tak by zrobić. Zostaje tylko pytanie po co. Po to żeby nie 
odśmiecały się obiekty jak ktoś zapomni o delete ?
I wtedy lepiej będzie pisać:
	 new Object().delete(); //żeby środowisko trackowało :-)

> Po drugie, najefektywniejszym sposobem zarządzania pamięcią obiektów,
> szczególnie dużą ilością małych obiektów o krótkim czasie życia, pozostaje
> alokator specjalizowany (pula przeznaczona dla obiektów tylko jednego typu).

Najefektywniejszym w jakim sensie ?
Np. w sesnie zużycia CPU to prawdopodobnie najefektywniejszym jest 
dokupienie kilku terabajtów pamięci i wyłaczenie gc :-)

> To jest też prawda, że odśmiecacz zapobiega wyciekom pamięci
nie
> i zmniejsza
> niebezpieczeństwo istnienia wiszących wskaźników, 
tak
> ale związku z efektywnością
> przydzielania pamięci nie ma to za grosz.

?


> Można by zadać pytanie, dlaczego w takim razie w C++ wciąż stosuje się
> "malloc-based" przydzielanie pamięci (taka jest niestety praktyka, nie tylko w
> gcc). Nie wiem. Może ktoś z grupowiczów mógłby przedstawić jakieś potencjalne
> problemy z zaimplementowaniem takiej metody, jak opisana w p1?

bo to by już nie było C++ tylko Java-- ?

-- 
jarekr
Technical Details
Message-ID: <e54dbo$6k$1@news2.ipartners.pl>
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!mat.uni.torun.pl!news.man.torun.pl!newsfeed.pionier.net.pl!news.ipartners.pl!ipartners.pl!not-for-mail
References: <e524va$uk4$1@news.onet.pl> <0dc97213pniht75f98ui5ikrca3m5i1rc4@4ax.com> <e5405a$kf3$1@kujawiak.man.lodz.pl>

Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!mat.uni.torun.pl!news.man.torun.pl!newsfeed.pionier.net.pl!news.ipartners.pl!ipartners.pl!not-for-mail
From: Jarek Ratajski <ja_chyba_ratajski@bez_sensu.onet.pl>
Newsgroups: pl.comp.objects
Subject: Re: pule obiektów
Date: Thu, 25 May 2006 16:04:32 +0200
Organization: Internet Partners
Lines: 49
Message-ID: <e54dbo$6k$1@news2.ipartners.pl>
References: <e524va$uk4$1@news.onet.pl> <0dc97213pniht75f98ui5ikrca3m5i1rc4@4ax.com> <e5405a$kf3$1@kujawiak.man.lodz.pl>
NNTP-Posting-Host: nat.mareon.com.pl
Mime-Version: 1.0
X-Trace: news2.ipartners.pl 1148565688 212 217.153.64.166 (25 May 2006 14:01:28 GMT)
X-Complaints-To: abuse@ipartners.pl
NNTP-Posting-Date: 25 May 2006 14:01:28 GMT
In-Reply-To: <e5405a$kf3$1@kujawiak.man.lodz.pl>
X-Accept-Language: en-us, en
User-Agent: Mozilla Thunderbird 1.0.2-6 (X11/20050513)
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit