On Friday, 14 September 2012 at 14:27:43 UTC, monarch_dodra wrote:
On Friday, 14 September 2012 at 11:17:55 UTC, Jacob Carlborg
wrote:
Perhaps using GC.malloc?
Hum, apparently, there is a second (default aka-hidden)
argument that is a bitmask applied to the allocated memory. So
not much gain there.
I'm allocating an array of 500_000 ulongs, and afterwards, I'm
initializing them all "by hand", making the default allocation
useless.
I'm not going to lose any sleep over this, but there is no way
in D to get (garbage collected) un-initialized
memory/allocations?
Never mind, I misread the doc. The bitmask is not memcopied, it
is actually just a mask of options, so GC works perfectly.
Anybody know what the attribute "FINALIZE" (Finalize the data in
this block on collect) means?
On Friday, 14 September 2012 at 18:14:54 UTC, bearophile wrote:
monarch_dodra:
I'm allocating an array of 500_000 ulongs, and afterwards, I'm
initializing them all "by hand", making the default allocation
useless.
In std.array there are two functions to avoid a double
initialization, mostly to be used for nonreference data.
Bye,
bearophile
I was looking for those actually, but I was looking in
std.algorithm...
Thanks