我有一个字节数组定义为二进制阵列
unsigned char ptr = new unsigned char[1024];
fillWithSomething(ptr, 1024);
然后,我需要将ptr
变量存储在V8发动机的Local< Array>
变量或另一种V8数据类型。 目前,我将字节数组转换为字符串,以便存储在Local< String>
变量中,但是这种方法对我的应用程序来说是低效的。
在此先感谢。
地更新(由于维亚切斯拉格罗夫)
I测试与外部阵列的解决方案,但我不能使用它在我的node.js服务器代码。我有以下代码(在我延长侧C++):
Handle<Object> array = Object::New();
array->SetIndexedPropertiesToExternalArrayData(getBytes(), kExternalUnsignedByteArray, bytesSize);
return array;
我的问题是,我如何使用array
变量在我的服务器代码(JavaScript)的调用函数GetIndexedPropertiesExternalArrayData()
。
再次感谢
Вячеслав,请你创建最小的例子来说明外部磁盘阵列的使用情况如何?因为到目前为止,似乎只有V8的委员会了解如何使用它们。挖掘到d8,没有适当的背景知识只是痛苦和无用的。 – exebook
@exebook很难创建比上面两行代码更简单的示例。 –
' template class test {};'也是最小的,但不会解释什么是模板。我使用嵌入式V8大约一年,我无法理解如何使用上面的最小示例。该函数有一个很长的名字,也许有人可能认为是自我解释,但我希望能够在这些行被执行后从JS访问这个数组。但是,不,数组在JS方面是空的。也许我期待错误的结果。无论哪种方式,它不明确(对我来说)。 –
exebook