Uvolňování paměti – C / C++ – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Uvolňování paměti – C / C++ – Fórum – Programujte.comUvolňování paměti – C / C++ – Fórum – Programujte.com

 

petr0
Duch
11. 7. 2006   #1
-
0
-

Je nejaky způsob, jak uvolnit pouze cast alokovane pameti? (jakýkoliv?)

Nahlásit jako SPAM
IP: ...–
Jura_0
Stálý člen
11. 7. 2006   #2
-
0
-

skocka napsal:

Je nějaký způsob, jak uvolnit pouze část alokované paměti? (jakýkoliv?)


Pokud alokujete souvisly blok pameti, tak se domnivam, ze to nejde. Ale slo by to uvolnovat pouze kdybyste vytvoril pole ukazatelu. Jinak je mi zahodou, proc to vlastne potrebujete?
Pozn.: Pokud pracujete v C++, tak vyuzijte nejaky kontejner(napr. vector) z STL a mate vystarano(samozrejme pokud do toho kontejneru nebudete cpat ukazazetel an objekty, pak to stejne budete muset dealokovat)

Nahlásit jako SPAM
IP: ...–
petr0
Duch
11. 7. 2006   #3
-
0
-

D?l?m v C a zrovna se pokou??m o n?jak? lep?? zpracov?n? eratosthenova s?ta.
Je to docela n?ro?n? na pam?? - vytv??? bitovou mapu prvo??sel od 0 do n, kde n<=2^32-8, co? p?i maxim?ln?m n zab?r? skoro a? 512MB pam?ti (n/8 B). V p??pad?, ?e chci generovat prvo??slo od po??tku v?t??ho ne? nula je ale pam?? n/8B pot?ebn? pouze zpo??tku a s postupn?m vypl?ov?n?m pole by se mohly prvn? bajty mazat, ??m? bych mohl uvolnit velkou ??st te? u? nepot?ebn? pam?ti, ??m? bych mohl zabr?nit swapov?n? v pr?b?hu dal?? ??st v?po?tu. V?po?et by mi to pak dost zrychlilo.

Nahlásit jako SPAM
IP: ...–
Jura_0
Stálý člen
11. 7. 2006   #4
-
0
-

skocka napsal:

D?l?m v C a zrovna se pokou??m o n?jak? lep?? zpracov?n? eratosthenova s?ta.
Je to docela n?ro?n? na pam?? - vytv??? bitovou mapu prvo??sel od 0 do n, kde n<=2^32-8, co? p?i maxim?ln?m n zab?r? skoro a? 512MB pam?ti (n/8 B). V p??pad?, ?e chci generovat prvo??slo od po??tku v?t??ho ne? nula je ale pam?? n/8B pot?ebn? pouze zpo??tku a s postupn?m vypl?ov?n?m pole by se mohly prvn? bajty mazat, ??m? bych mohl uvolnit velkou ??st te? u? nepot?ebn? pam?ti, ??m? bych mohl zabr?nit swapov?n? v pr?b?hu dal?? ??st v?po?tu. V?po?et by mi to pak dost zrychlilo.



S tim mazanim to patrne nebude dobry napad, rekl bych ze prave tohle je na tom nejvice pametove narocne, resp. na rychlosti. Neslo by, napr. pri velkych N rozdelit vypocty na co mozna nejvice stejne useky a pocitat to po castech? Tim by se omezilo mazani pameti...

Nahlásit jako SPAM
IP: ...–
Sharptan0
Newbie
11. 7. 2006   #5
-
0
-

Pokud nějaký výpočet zabírá tolik paměti, je to pravděpodobně rekurze. V takové?m případě je vhodnější z rekurze udělat obyčejný cyklus, na paměť to bude šetrnější?, jen si autor o něco málo víc zapíše.

Nahlásit jako SPAM
IP: ...–
Jura_0
Stálý člen
12. 7. 2006   #6
-
0
-

Sharptan napsal:

Pokud nějaký výpočet zabírá tolik paměti, je to pravděpodobně rekurze. V takovém případě je vhodnější z rekurze udělat obyčejní cyklus, na paměť to bude šetrnější, jen si autor o něco málo víc zapíše.


Mno, myslim, ze by byl autor sam proti sobe, kdyby implementoval Eratostenovo sito pomoci rekurze, navic vetsina znamych implementaci jsou obvykle reseny pomoci cyklu.

Nahlásit jako SPAM
IP: ...–
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 114 hostů

Podobná vlákna

Uvolnovani pameti — založil Aaron

Uvolňování paměti — založil Michal

"realokace" paměti — založil Passassa

Nedostatek paměti — založil ProgDan

Moderátoři diskuze

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032024 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý