【发布时间】:2013-01-17 13:19:57
【问题描述】:
我正在用 C 语言为 R 包开发一个函数,我需要在手动分配的内存中初始化 R 数值向量,该内存不是垃圾回收的。
标准函数 allocVector(REALSXP, XXX) 为我分配内存并初始化对象。我已经分配了一块内存,我需要在这块内存中初始化 R 对象并返回给用户空间。
我正在尝试遵循的算法
自己分配内存(其实是内存映射文件)
在这个内存中放一个R对象(标准R数值向量)(如何?)
防止垃圾收集器尝试收集它(如何?)
为此对象注册终结器
返回R对象用户可以使用
获取不再引用对象的通知并释放对象
【问题讨论】:
标签: r memory-management