lua中赋值nil操作

今天使用cjson操作发现lua的nil操作并没有删除内存。

具体代码如下:

rst_table["ws"][1] = nil
local cut_rsh_result = cjson.encode(rst_table)
print (cut_rsh_result)

我们队其中某项赋值为nil

cjson转换时并没有删除 而是显示

[null,{}] 这样的东西。

 

验证数组时也发现

local a = {1,2,3,4}

a[1]=nil

print (a[1])

nil

此时 a[1] 没有变成 2  

print(a[2])

2

由此可见nil只是将内存至 0 并没有释放。只有在对象结束生命周期  lua垃圾机制才会回收。

小记一下!

转载于:https://www.cnblogs.com/hgd7123/p/3383943.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值