-
Path: news-archive.icm.edu.pl!news.gazeta.pl!not-for-mail
From: " " <f...@g...pl>
Newsgroups: pl.comp.programming
Subject: Re: LLVM a Garbage Collector
Date: Mon, 21 May 2012 14:00:07 +0000 (UTC)
Organization: "Portal Gazeta.pl -> http://www.gazeta.pl"
Lines: 82
Message-ID: <jpdhp7$gvo$1@inews.gazeta.pl>
References: <jpaldh$stb$1@inews.gazeta.pl> <jpb1rm$qe0$1@inews.gazeta.pl>
<jpcl7j$3fi$1@inews.gazeta.pl>
<3...@g...com>
<jpddpv$5ff$1@inews.gazeta.pl>
<3...@g...com>
NNTP-Posting-Host: localhost
Content-Type: text/plain; charset=ISO-8859-2
Content-Transfer-Encoding: 8bit
X-Trace: inews.gazeta.pl 1337608807 17400 172.20.26.235 (21 May 2012 14:00:07 GMT)
X-Complaints-To: u...@a...pl
NNTP-Posting-Date: Mon, 21 May 2012 14:00:07 +0000 (UTC)
X-User: fir
X-Forwarded-For: 31.61.131.255
X-Remote-IP: localhost
Xref: news-archive.icm.edu.pl pl.comp.programming:197391
[ ukryj nagłówki ]Roman W <b...@g...pl> napisał(a):
> On Monday, May 21, 2012 1:52:15 PM UTC+1, weary.fighter.of.grunge wrote:
> > >=20
> > > Cecha charakterystyczna programow napisanych w C czy C++ bez GC jest fa=
> naty=3D
> > > czne unikanie (re)alokacji pamieci, bo to kosztuje, kosztem czytelnosci=
> pro=3D
> > > gramu. Kiedy sie uzywa GC, te operacje staja sie tansze, i nie trzeba s=
> ie t=3D
> > > ak meczyc.
> > >=20
> >=20
> > W jaki sposob meczyc? Pytam bo jak zyje i pisze w c nie znam=20
> > takiego przypadku. Moze ktos podac jakis taki przypadek=20
> > o jakim mowa, rozwazylbym to. Ciekawe czy to nie da sie zrobic=20
> > normalnie np na stosie.
>
> Typowy usage pattern w C++ to prealokacja pamieci roboczej, a nastepnie prz=
> ekazywanie odnosnika do niej (w jakiejs formie: wskaznika, referencji, spry=
> tnego wskaznika, itd.) do niej, albo do "workspace" jej zawierajacej, z pro=
> cedury do procedury, nawet jezeli jej zawartosc jest nadpisywana. W Javie m=
> ozna po prostu zadeklarowac sobie tablice dokladnie tam gdzie jest ona potr=
> zebna, i tez jest dobrze.
>
> C++ z kolei umozliwia tworzenie obiektow na stosie, co jest jeszcze szybsze=
> ..
no to jesli o to chodzi to mozna zrobic na stosie
void test()
{
auto ListaItemow[] = PodajInventoryPostaciNr(15);
loguj( ListaItemow[] );
}
tak ze tutaj nie tylko gc ale i heap nie jest
potrzebny (slowo auto dodalem dla podkreslenia ze to na stosie)
co prawda obecne stare c tego nie wspiera (*) i to wymaga
manipulowania wskaznikiem stosu, ale (o ile sie nie
myle bo nie myslem o tym za duzo) mozna to zrobic
w ramach statego systemu stos+globale-malloc ze tak powiem
(*) nawet w obecnym c mozna to zrobic z tego co sie orientuje
void test()
{
conts int lista_ilemow_max = 10000;
auto ListaItemow[lista_ilemow_max];
PodajInventoryPostaciNr(15, ListaItemow);
loguj( ListaItemow );
}
kosztem zaalokowanie na stosie nie dokladnie tyle ile trzeba
tylko maksymalnej dopuszczalnej wartosci (ktos wie czy to by
ruszylo? moze bym tego uzywal bo lubie takie ciekawe wynalazki)
moze jakis inny przypadek (gdzie moznaby sie niemaczyc
uzywajac czegos w rodzaju gc lub recznej dealokacji) ?
(niby mozna sobie cos takiego wyobrazic np gre ktora
zawiera w sobie dwie rozne gry i przelacza sie miedzy jedna a
druga dealokujac ram nieuzywanej - ale w praktyce nie natrafilem
jeszcze na takie cos, i tak nie wiem czy nie daloby sie
kombinowac ze stosem w tym nawet wypadku a jak nie to i
tak chyba realokowanie tablic do 0 (ale nie zamazywanie
wskaznikow) byloby chyba lepsze niz 'calkowite odpinanie'
(acz nie mam jasnosci w tych sprawach )
--
Wysłano z serwisu Usenet w portalu Gazeta.pl -> http://www.gazeta.pl/usenet/
Następne wpisy z tego wątku
- 21.05.12 16:05 weary fighter of grunge
- 21.05.12 16:23 Maciej Sobczak
- 21.05.12 16:47 Roman W
- 21.05.12 17:08 Borneq
- 21.05.12 17:30 przegrany człowiek fir *
- 21.05.12 17:58 weary fighter of grunge fir
- 21.05.12 22:41 prof fir
- 21.05.12 23:10 Edek Pienkowski
Najnowsze wątki z tej grupy
- ,,Polski przemysł jest w stanie agonalnym" - podkreślił dobitnie, wskazując na brak zamówień.
- Rewolucja w debugowaniu!!! SI analizuje zrzuty pamięci systemu M$ Windows!!!
- 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
Najnowsze wątki
- 2025-05-10 Szczecin => Key Account Manager IT <=
- 2025-05-10 Rudno => Administrator sieci IT <=
- 2025-05-10 Wrocław => Controlling systems Consultant <=
- 2025-05-10 Rudno => IT network administrator <=
- 2025-05-10 Warszawa => Customer Service with Spanish + translation <=
- 2025-05-10 Warszawa => Senior Account Manager <=
- 2025-05-10 Trójmiasto => Head of Social Media <=
- 2025-05-10 Warszawa => C Programmer <=
- 2025-05-10 Warszawa => Java Developer <=
- 2025-05-10 powąchaj instrybutor
- 2025-05-10 Prawomocny wyrok. Rowerzysta nie ma pierwszeństwa, dojeżdżając do przejazdu
- 2025-05-09 Propagation velocity v/c dla kabli RF
- 2025-05-09 Warszawa => Senior Node.js Developer (doświadczenie z framework Nest.
- 2025-05-09 Patrolowanie kampusów
- 2025-05-09 Faktyczne opodatkowanie medianowej płacy w Polsce wyniosło 39,4% w lis. 2024r.