如何将原始内存复制到nodejs中的缓冲区?

How to copy raw memory to Buffer in nodejs?

我使用 nodenode-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);
}