使用swig 将 接口文件转为lua 的动态库
大致代码如下:
结构体大概是这样
strut A {
struct B * b;
....
}
local A = newA() // 泛指new, 该函数有calloc 申请了一个对象A 这个函数是在swig 转换生成的 _wrap.c 文件中
local B = newB() // 该函数有calloc 申请了一个对象B
A.b = B
A.b = nil
B = nil
collectgarbage("collect")
回收内存的时候发现B 的内存根本不会被回收,写了一个循环 ,内存暴涨
求救该怎么解决