🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: pl.comp.lang.c
Article #272438

Re: [SGCL] Odśmiecania współbieżnego ciąg dalszy

#272438
From: Sebastian Nibisz
Date: Wed, 27 Feb 2008 12:40
44 lines
3121 bytes
>> Operacje atomowe na liczniku nie sa wymagane tylko w przypadku, gdy ma 
>> sie pewność, że manipulacja wskaźnikiem odbywa się w jednym wątku 
>> aplikacji.
>
> Ano właśnie nie... :-)
> Są potrzebne tylko wtedy, gdy wątek pierwszy raz spotyka się z danym 
> obiektem.
> Wówczas atomowo podnosi licznik referencji (i od tego momentu ma pewność, 
> że
> nikt mu tego obiektu nie zabije) i może sobie zacząć lokalne zliczanie 
> swoich referencji.

A w jaki sposób wątek sprawdza, czy pierwszy raz spotkał sie z danym 
obiektem, aby ewentualnie atomowo podnieść licznik referencji?

>>>> 3. Zwalnianie większych struktur, może doprowadzić do przepełnienia 
>>>> ramki stosu.
>>>
>>> To się da rozwiązać, choć nie zawsze jest to konieczne. Naiwna
>>> implementacja mark&sweep cierpi na dokładnie ten sam problem.
>>
>> Zawsze można to jakoś rozwiązać. Można się jednak nieźle ździwić, gdy 
>> niby prawidłowy fragment kodu wysypuje nam aplikację.
>
> No tak, tylko Ty to podawałeś jako wadę RC, choć dotyczy to też M&S
> z dokładnie tego samego powodu. I w ten sam sposób się to rozwiązuje.

Nie można stawiać tych dwóch przypadków na jednym poziomie, gdyż shared_ptr 
wymaga rozwiązania problemu na poziomie aplikacji a algorytm "mark & sweep" 
na poziomienie implementacji systemu GC.

>> Trudno uznać za zaletę stuację w której aplikacja zatrzymuje się na dwie 
>> sekundy tylko po to, aby zwolnić zajmowana przez siebie pamięć.
>
> Przesadzasz... poza tym na to też są sposoby... RC jest bardzo często
> wykorzystywany w systemach czasu rzeczywistego, więc chyba nie ma
> lepszego dowodu na istnienie rozwiązania.

RC nie jest jedyna techniką odśmiecania stosowaną w systemach czasu 
rzeczywistygo, co dobitnie świadczy o tym, że jego wady mogą przeszkadzać.

Pozdrawiam.

- Bastek - 
Technical Details
Message-ID: <fq3lor$836$1@inews.gazeta.pl>
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.gazeta.pl!not-for-mail
References: <fppvdq$68v$1@inews.gazeta.pl> <fq0od3$5bm$1@inews.gazeta.pl> <fq0qpa$ekv$1@inews.gazeta.pl> <fq27g3$p6j$1@atlantis.news.tpi.pl> <fq3fvc$at8$1@inews.gazeta.pl> <fq3k07$jp$1@atlantis.news.tpi.pl>

Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.gazeta.pl!not-for-mail
From: "Sebastian Nibisz" <EBA_K@poczta.onet.pl>
Newsgroups: pl.comp.lang.c
Subject: Re: [SGCL]
 Odśmiecania współbieżnego ciąg dalszy
Date: Wed, 27 Feb 2008 13:40:54 +0100
Organization: "Portal Gazeta.pl -> http://www.gazeta.pl"
Lines: 45
Message-ID: <fq3lor$836$1@inews.gazeta.pl>
References: <fppvdq$68v$1@inews.gazeta.pl> <fq0od3$5bm$1@inews.gazeta.pl> <fq0qpa$ekv$1@inews.gazeta.pl> <fq27g3$p6j$1@atlantis.news.tpi.pl> <fq3fvc$at8$1@inews.gazeta.pl> <fq3k07$jp$1@atlantis.news.tpi.pl>
NNTP-Posting-Host: s178pc190.mmj.pl
Mime-Version: 1.0
X-Trace: inews.gazeta.pl 1204116059 8294 85.219.178.190 (27 Feb 2008 12:40:59 GMT)
X-Complaints-To: usenet@agora.pl
NNTP-Posting-Date: Wed, 27 Feb 2008 12:40:59 +0000 (UTC)
In-Reply-To: <fq3k07$jp$1@atlantis.news.tpi.pl>
X-Antivirus-Status: Clean
X-MimeOLE: Produced By Microsoft MimeOLE V6.0.6000.16545
X-Priority: 3
X-Newsreader: Microsoft Windows Mail 6.0.6000.16480
X-User: eba_k
X-Antivirus: avast! (VPS 080227-0, 2008-02-27), Outbound message
X-MSMail-Priority: Normal
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit