关注
Q8:
我们都知道Redis使用的是C语言来编写的,但是C语言并不支持垃圾回收机制,你能讲一下Redis的内存回收机制是怎样实现的吗?
A:
因为Redis中存取数据的都是对象,所以开发者在RedisObject里预留了一个字段叫refcount,类似于Java的引用计数法判断垃圾。在创建对象时,将其初始化为1,当遇到被程序使用时,会新增1,不被使用时会减小1,而当减小为0时,则进行回收,其生命周期相较于Java的垃圾回收机制简单不少,主要分为“创建对象”、“操作对象”、“释放对象”。另外,鉴于Redis的内存比较宝贵,因此还引入了另外一种机制(共享内存),类似于JVM中的StringPool,用于节省内存,防止创建**过多的相同数值的字符串**。
查看原帖
点赞 评论
相关推荐
点赞 评论 收藏
分享
牛客热帖
更多
正在热议
更多
# 上班到公司第一件事做什么? #
111566次浏览 764人参与
# 工作两年想退休了 #
205697次浏览 1822人参与
# 七夕节你打算怎么过? #
69357次浏览 802人参与
# 运营面经 #
146326次浏览 1323人参与
# 参加过提前批的机械人,你们还参加秋招么 #
104001次浏览 1641人参与
# 如果公司降薪,你会跳槽吗? #
112727次浏览 729人参与
# 蚂蚁求职进展汇总 #
138998次浏览 1224人参与
# 运营商笔面经互助 #
189568次浏览 1795人参与
# 找工作能把i人逼成什么样 #
16967次浏览 192人参与
# 四大天坑是哪四家? #
91716次浏览 231人参与
# 网易求职进展汇总 #
169628次浏览 1414人参与
# 大厂面试初体验 #
84126次浏览 385人参与
# 什么样的公司千万别去 #
28627次浏览 151人参与
# 业务面应该做哪些准备 #
79536次浏览 814人参与
# 你今年做了几份实习? #
11555次浏览 168人参与
# 通信/硬件公司求职体验 #
178882次浏览 1025人参与
# 大学最后一个寒假,我想…… #
72772次浏览 730人参与
# 金三银四,你有感觉到吗 #
663587次浏览 6032人参与
# 大家每天通勤多久? #
64847次浏览 416人参与
# 一起聊华为 #
169515次浏览 826人参与
传音控股公司福利 344人发布