如何将原始内存复制到nodejs中的缓冲区?
How to copy raw memory to Buffer in nodejs?
我使用 node
和 node-ffi
。我从 native/C 收到一个回调,它传递一个 (void *,size_t)
来指示一个包含有趣数据的内存区域。我想接受并创建具有相同内容的 Buffer
。
基本上:
function callback_on_write(ptr, size)
{
var buffer = new Buffer(size);
buffer.somehow_copy_from_memory(ptr, size);
}
如何将原始内存复制到 Buffer
?
使用ref.reinterpret(buffer, size, offset)
.
Returns a new Buffer instance with the specified size
, with the same memory address as buffer
.
var ref = require('ref');
function callback_on_write(ptr, size)
{
var buffer = ref.reinterpret(ptr, size);
}
我使用 node
和 node-ffi
。我从 native/C 收到一个回调,它传递一个 (void *,size_t)
来指示一个包含有趣数据的内存区域。我想接受并创建具有相同内容的 Buffer
。
基本上:
function callback_on_write(ptr, size)
{
var buffer = new Buffer(size);
buffer.somehow_copy_from_memory(ptr, size);
}
如何将原始内存复制到 Buffer
?
使用ref.reinterpret(buffer, size, offset)
.
Returns a new Buffer instance with the specified
size
, with the same memory address asbuffer
.
var ref = require('ref');
function callback_on_write(ptr, size)
{
var buffer = ref.reinterpret(ptr, size);
}