On Wed, 13 Oct 2010 23:01:38 -0400, Denis Koroskin <2kor...@gmail.com>
wrote:
On Thu, 14 Oct 2010 06:53:57 +0400, Steven Schveighoffer
<schvei...@yahoo.com> wrote:
Denis Koroskin Wrote:
On Thu, 14 Oct 2010 02:38:11 +0400, Sean Kelly <s...@invisibleduck.org>
wrote:
> Denis Koroskin Wrote:
>>
>> I prefer ubyte[] because that helps GC (void arrays are scanned for
>> pointers).
>
> To be fair, the only thing that matters here is what the type is when
> the initial "new" occurs. After that, I think bits are preserved for
> reallocations so if NO_SCAN is set then it will remain.
It also matter when I dup it. Even if you preallocate void[] with
NO_SCAN
dup'ing it will reset the flag.
Why would you be duping the buffer for reading or writing?
-Steve
I could imagine idup'ing once a read is complete.
But you don't *create* the buffer as a void[], you just *pass* it as a
void[]. When you dup it outside of read, it's back to the type it
actually is. As long as read/write don't dup the buffer you are OK.
-Steve