Some of this has been discussed before, but the API has changed a lot
recently and I'm lost a bit in the discussion.
In v8 4.2.77.20 (version in iojs 2.4.0) the following seems to work for
arrays *larger than 64 bytes:*
Local<Uint8ClampedArray> arr = args[0].As<Uint8ClampedArray>();
void *data = arr->GetIndexedPropertiesExternalArrayData();
For arrays smaller than 64 bytes, data is 0. I'm guessing this is an
artifact of small arrays being sliced off from a shared buffer while larger
arrays are assigned their own memory? I'm not sure if this is even supposed
to work. Trevor Norris asked in November and didn't get a reply
(https://groups.google.com/forum/#!msg/v8-dev/qathcB2-M-A/MVKwE8oHVH4J).
As far as I understand, the Get/SetIndexedProperties... API is being
removed in v8 4.3 and the proper interface there is ArrayBuffer::GetContents
(to not externalize the ArrayBuffer) (discussed here
<https://github.com/nodejs/io.js/issues/1451>, here
<https://codereview.chromium.org/1092923002> and here
<https://codereview.chromium.org/1095083002>). Is all that correct?
Thanks,
Zach
--
--
v8-users mailing list
[email protected]
http://groups.google.com/group/v8-users
---
You received this message because you are subscribed to the Google Groups
"v8-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
For more options, visit https://groups.google.com/d/optout.