源码阅读基于Redis4.0.9 SDS介绍 从上面的例子可以看到,key为dbname的值是一个字符串“redis” Redis源码是用c写成,但并没有使用c的字符串。c的字符串有以下缺点: 1. 没有储存字符串长度的变量,获取长度只能靠遍历字符串 2. 扩容麻烦。没有相应保护,容易造成缓冲区溢出 ...
分类:
其他好文 时间:
2019-12-24 23:23:38
阅读次数:
112
time时间库主要有以下几个方法 1. 生成struct_time ,然后就可以很方便的获取到年月日,时分秒等信息 time.localtime() 2. 生成时间戳 time.time() 3. 将struct_time 转成指定格式的时间字符串 time.strftime(format,stru ...
分类:
其他好文 时间:
2019-12-24 23:18:41
阅读次数:
100
MSDS 596 Homework 10 Due November 28 2017Notes. The lowest grade among all eleven homework will be dropped, so NO late submission will beaccepted. All ...
分类:
其他好文 时间:
2019-12-22 20:22:13
阅读次数:
86
本文参考了 "Redis源码3.0分支" 和《Redis设计与实现》。 对象 Redis基于下面提到的底层数据结构创建了一个对象系统,这个系统包括 、`List Set Hash Sorted Set redisObject type encoding ptr`。 底层数据结构 SDS Simple ...
分类:
其他好文 时间:
2019-12-15 14:14:03
阅读次数:
107
一.使用场景 redis没有直接使用C语言传统的字符串表示(以空字符结尾的字符数组,以下简称C字符串),而是构建了简单动态字符串(Simple dynamic String SDS)的抽象类型,并将SDS作为默认的字符串表示形式。 redis里面C字符串只用在字符串字面量(String litera ...
分类:
其他好文 时间:
2019-12-10 22:17:50
阅读次数:
100
更多内容,欢迎关注微信公众号:信Yang安全,期待与您相遇。 "360tray.exe": "360安全卫士-实时保护", "360safe.exe": "360安全卫士-主程序", "ZhuDongFangYu.exe": "360安全卫士-主动防御", "360sd.exe": "360杀毒", ...
分类:
系统相关 时间:
2019-12-06 11:49:10
阅读次数:
231
对于上一篇文章,我又自己总结归纳并补充了一下,有了第二篇。 概览 1M , 新空间 = 累加1M 空间有了,那么我们需要根据最新的空间长度占用,再找到对应的新的SDS数据类型。 看一下源码,增加一下印象: SDS 和 内部类型 外部字符串类型,找到了SDS结构,现在到了SDS转内部结构 对于字符串类 ...
分类:
其他好文 时间:
2019-12-01 10:10:25
阅读次数:
132
1.标准strcat 会有溢出风险,sdscat无溢出风险 2.空间预分配,惰性空间释放 空间预分配:sds分配空间时,如果原来是5,free是0, sdscat追加一个10长度的,此时字符串加长到15,free也同时分配15,总长为15 + 15free + 1(/0) 为31字节; 若大于1M后 ...
分类:
其他好文 时间:
2019-11-26 09:32:13
阅读次数:
89
记录一下如何创建DirectedGraph,便于以后查找使用 static ShapefileDataStore sds= null; static DirectedGraph graph = null; ShapefileDataStoreFactory dataStoreFactory = ne ...
分类:
其他好文 时间:
2019-11-16 17:34:59
阅读次数:
98
1 # Author:CallMeV 2 # DATE :2019-11-10 3 # Time : 12:47 4 5 import time 6 print("time.time()is:>>>",time.time()) 7 print("time.strftime()is:>>>",time ...
分类:
其他好文 时间:
2019-11-10 13:25:41
阅读次数:
81