Re: Do you use a garbage collector?
On Apr 11, 3:07 am, "Chris Thomasson" <cris...@comcast.net> wrote:
"Razii" <DONTwhatever...@hotmail.com> wrote in message
news:v5btv3lmqeknq5imtt3j8dnqohfike65b8@4ax.com...
On Thu, 10 Apr 2008 17:33:21 +0300, Juha Nieminen
<nos...@thanks.invalid> wrote:
However, part of my C++ programming style just naturally also avoids
doing tons of news and deletes in tight loops (which is, again, very
different from eg. Java programming where you basically have no choice)
Howeever, Java allocates new memory blocks on it's internal
heap (which is allocated in huge chunks from the OS). In
this way, in most of the cases it bypasses memory allocation
mechanisms of the underlying OS and is very fast. In C++,
each "new" allocation request will be sent to the operating
system, which is slow.
You are incorrect. Each call into "new" will "most-likely" be
"fast-pathed" into a "local" cache.
Are you sure about the "most-likely" part? From what little
I've seen, most C runtime libraries simply threw in a few locks
to make their 30 or 40 year old malloc thread safe, and didn't
bother with more. Since most of the marketing benchmarks don't
use malloc, there's no point in optimizing it. I suspect that
you're describing best practice, and not most likely. (But I'd
be pleased to learn differently.)
--
James Kanze (GABI Software) email:james.kanze@gmail.com
Conseils en informatique orient=E9e objet/
Beratung in objektorientierter Datenverarbeitung
9 place S=E9mard, 78210 St.-Cyr-l'=C9cole, France, +33 (0)1 30 23 00 34