node-ffi次の署名を使用して、コールバックの実装に取り組んでいます。
const callback = ffi.Callback('void', ['int', 'void *'], (eMsg, pData) => {
console.log(pData);
console.log(`Buffer deref: ${ref.get(pData)}`);
});
基礎となる C ライブラリは、これを のvoid *値で呼び出しますpData。コールバックの約半分は実際にint *値を返し、残りの半分pDataはより複雑なデータ (つまりStruct) です。最終ref.get(pData)的には になりnullます。の代わりにCallback使用するように定義を変更すると、正しい値が返されます。私が理解できないのは、サイズが 0 の Buffer になってしまい、適切に逆参照されない理由です ( が であっても)。int *void *ref.get(pData)void *pData int *
私は何かが欠けているように感じますが、私の人生では、それが何であるかを見ることはできません. 誰でも助けることができますか?