接上文,继续分析代码
1. 设置线程安全模式
2. 内存溢出处理
//调用下一级
static void (*zmalloc_oom_handler)(size_t) = zmalloc_default_oom;
//最终调用
static void zmalloc_default_oom(size_t size) { fprintf(stderr,"zmalloc: Out of memory trying to allocate %zu bytes\n",size); fflush(stderr); abort();}
3.生成hash seed
3.1 time( )函数头文件:#include
3.2 getpid(取得进程识别码)表头文件 #include
3.3 srand()函数 void srand(unsigned seed) 初始化随机数发生器。
3.4 gettimeofday()函数
#include
3.5 设置hash seed
dict_hash_function_seed =<span style="color: #000000;"> seed;
}
4. 检查是否sentime模式(集群的临时方案)
</span><span style="color: #0000ff;">if</span> (strstr(argv[<span style="color: #800080;">0</span>],<span style="color: #800000;">"</span><span style="color: #800000;">re<a href="/tag/dis/" target="_blank" class="keywords">dis</a>-sentinel</span><span style="color: #800000;">"</span>) != NULL) <span style="color: #0000ff;">return</span> <span style="color: #800080;">1</span><span style="color: #000000;">;
</span><span style="color: #0000ff;">for</span> (j = <span style="color: #800080;">1</span>; j < argc; j++<span style="color: #000000;">)
</span><span style="color: #0000ff;">if</span> (!strcmp(argv[j],<span style="color: #800000;">"</span><span style="color: #800000;">--sentinel</span><span style="color: #800000;">"</span>)) <span style="color: #0000ff;">return</span> <span style="color: #800080;">1</span><span style="color: #000000;">;
</span><span style="color: #0000ff;">return</span> <span style="color: #800080;">0</span><span style="color: #000000;">;
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。