会员
众包
新闻
博问
闪存
赞助商
HarmonyOS
Chat2DB
所有博客
当前博客
我的博客
我的园子
账号设置
会员中心
简洁模式
...
退出登录
注册
登录
climber1990
博客园
首页
新随笔
联系
订阅
管理
2018年1月12日
redis--数据结构与对象
摘要: redis是目前常用的由C语言实现的kv集群框架,本文将详细介绍redis底层6种数据结构,并介绍5种对象的实现方案。 1.自定义字符串SDS 如上所示,可以看出SDS也是以'\0'作为字符串结尾,而且没有将空字符计入buf长度,完全对用户透明。 SDS相对于C字符串的优势也很明显: O(1)复杂度
阅读全文
posted @ 2018-01-12 00:03 climber1990
阅读(156)
评论(0)
推荐(0)
2017年10月18日
jvm--Garbage Collection
摘要: 垃圾回收(GC)一直是java语言的重中之重。 1 对象状态鉴别 1.1 标记对象是否可回收一般有两种算法: 引用计数算法:给每个对象添加一个引用计数器,当引用一次时+1,当引用时效时-1,当计数器为0时即可回收。该算法最大的缺点是当多个对象相互循环引用时将用不释放。 可达性分析算法:将“GC Ro
阅读全文
posted @ 2017-10-18 22:52 climber1990
阅读(173)
评论(0)
推荐(0)
2017年10月15日
jvm--内存区域与内存溢出异常
摘要: java是一门内存动态分配、垃圾自动回收的高级编程语言。 1 运行时数据分区 方法区 用来存储已被虚拟机加载的类信息、常亮、静态变量、即时编译后的代码等数据;在hotspot虚拟机中又被称为永久代,此外字符串常量池已经在java7版本后移除永久代。 运行时常量池是方法区的一部分,具有动态性,用于存放
阅读全文
posted @ 2017-10-15 23:08 climber1990
阅读(631)
评论(0)
推荐(0)
公告