摘要:redis 的事务相关的几个命令分别为 watch multi exec. watch 可以监控一个变量在事务开始执行之前是否有被修改.使用方式为: WATCH key [key ...] 在redis内部的实现是每个db有一个名为watched_keys的dict,这个dict的key为监控的ke 阅读全文
redis代码解析-dictionary类型
2017-09-19 11:00 by NicGanon, 537 阅读, 0 推荐, 收藏, 编辑
摘要:dict本质上是为了解决算法中的查找问题(Searching),一般查找问题的解法分为两个大类:一个是基于各种平衡树,一个是基于哈希表。 redis中的dict传统的哈希算法类似,它采用某个哈希函数从key计算得到在哈希表中的位置,采用拉链法解决冲突,并在装载因子(load factor)超过预定值 阅读全文
exceptional c++ 读书笔记 一 . vector 的使用
2016-05-04 21:39 by NicGanon, 186 阅读, 0 推荐, 收藏, 编辑
摘要:一. at() 与 operator[] void f(vector<int>& v) { v[0]; v.at(0); } 对于 vector 中的元素的随机访问有两种方式operator[] 和 at() , 两种方式的区别主要就是 at() 函数会进行边界检查,对于越界会抛出异常std::ou 阅读全文
基本socket api
2014-08-18 20:11 by NicGanon, 873 阅读, 0 推荐, 收藏, 编辑
摘要:socket函数,为了执行网络I/O,一个进程必须做的第一件事就是调用socket函数,并且指定通信协议类型。#includeint socket (int family, int type, int protocol); //成功返回非负描述符,出错-1其中family参数指明了协议族,AF_IN... 阅读全文
TCP连接的建立与终止
2014-08-17 15:41 by NicGanon, 219 阅读, 0 推荐, 收藏, 编辑
摘要:一 TCP是一个面向连接的协议。通常由客户端向服务端发送数据前建立。 连接的建立通过3次握手完成,客户端首先向服务端发送一个SYN,服务端响应一个SYN同时对客户端的SYN返回一个ACK,客户端再对服务端的SYN返回一个确认的ACK。至此一个TCP连接建立完毕。具体过程如下图所示:从上图中我们可... 阅读全文
TCP协议简介
2014-08-17 15:26 by NicGanon, 1166 阅读, 0 推荐, 收藏, 编辑
摘要:一 传输控制协议(TCP)是一种面向连接的、可靠的、基于字节流的传输层通信协议。1 面向连接意味着两个使用TCP的应用(通常是一个客户端和一个服务器)在彼此交换数据之前必须先建立一个TCP连接。2 TCP通过下列方式来提供可靠性: 1)应用数据被分割程TCP认为合适的数据块。TCP传递给IP的信息... 阅读全文
Linux下I/O复用 Select与Poll
2014-05-30 21:28 by NicGanon, 1180 阅读, 0 推荐, 收藏, 编辑
摘要:Select#include #include #include int select (int n, fd_setreadfds, fd_setwritefds, fd_setexceptfds, struct timevaltimeout);FD_CLR(int fd, fd_set *set)... 阅读全文
muduo库源码剖析(二) 服务端
2014-05-22 15:01 by NicGanon, 1420 阅读, 2 推荐, 收藏, 编辑
摘要:一. TcpServer类:管理所有的TCP客户连接,TcpServer供用户直接使用,生命期由用户直接控制。用户只需设置好相应的回调函数(如消息处理messageCallback)然后TcpServer::start()即可。主要数据成员: boost::scoped_ptr accepto... 阅读全文
muduo库源码剖析(一) reactor模式
2014-05-21 21:25 by NicGanon, 2566 阅读, 1 推荐, 收藏, 编辑
摘要:一. Reactor模式简介Reactor释义“反应堆”,是一种事件驱动机制。和普通函数调用的不同之处在于:应用程序不是主动的调用某个API完成处理,而是恰恰相反,Reactor逆置了事件处理流程,应用程序需要提供相应的接口并注册到Reactor上,如果相应的时间发生,Reactor将主动调用应用程... 阅读全文
POSIX 线程编程(二)线程建立与终止
2014-05-18 17:41 by NicGanon, 1056 阅读, 1 推荐, 收藏, 编辑
摘要:POSIX,线程,thread,joinable,detached 阅读全文