c - 如何在 JavaScript 中保存指针并进一步检索
问题描述
我dll
在服务器端使用 a 进行一些计算。我正在使用模块调用dll
,所以在中间的某个地方我需要保存地址并进一步使用它,但我不知道如何保存它,以便我可以在一段时间后将它传递给执行操作同一个地址。nodeJS
ffi
C pointer
dll
有谁知道如何做到这一点。
解决方案
经过大量搜索并尝试了不同的 2 方案后,我终于找到了一个解决方案,即如何存储地址并在将来检索以进行进一步操作:-
(注意:-这里我使用ref,ffi模块)所以为了存储指针,创建一个可以保存指针类型的缓冲区,如下所示
const ref = require('ref');
const ffi = require('ffi');
var buf = ref.alloc('pointer');
ref.writePointer(buf, 0, pointer); // pointer or memory address
所以在这里你将内存地址存储在缓冲区中,你可以从缓冲区中检索它,如下所示: -
memory_pointer = ref.readPointer(buf,0); // buf is buffer which we created above, 0 for offset
所以现在你得到了,所以你可以使用模块memory_pointer
将它传递给你的函数调用。ffi
推荐阅读
- sql-server - 选择任何列作为名称作为变量
- java - 如何修复 ORA-00911:Mybatis 查询中的无效字符
- c++ - OpenCV cmake 在为 Docker 构建映像时找不到 CUDA
- amazon-web-services - AWS API Gateway http 代理端点 url 报告 {proxy} 错误
- protractor - 如何单击在 DOM 中没有任何更改的单选按钮,除了量角器中的“::before ==”等一些标签
- c++ - 二叉树递归方法的直径
- angular - 带有路由的Angular 7多个参数
- git - git在合并时如何比较两个文件?
- c - 在运行我的代码时,我遇到了 Address Sanitizer 错误
- python - Gensim Word2Vec 词汇:输出不清楚