- 博客(5)
- 收藏
- 关注
原创 Redis实现消息队列
Redis实现消息队列 - Redis实现消息队列Redis能做消息队列得益于他list对象blpop/brpop接口以及Pub/Sub(发布/订阅)的某些接口。他们都是阻塞版的,所以Redis实现消息队列有两种方式: 通过数据结构list来实现 通过pub/sub来实现 另外redis存放的数据都只能是string类型,所以在任务传递的时候只能是传递字符串。我们可以将消息在发布者序列化成json格
2017-06-03 15:29:55 12027
转载 值语义与对象语义
值语义:(value sematics)指的是对象的拷贝与原对象无关,就像拷贝int一样。C++的内置类型(bool/int/double/char)都是值语义, 标准库里的complex/vector/string等等类型也都是值语义,拷贝之后就与原对象脱离关系。 对象语义:(object sematics)指的是面向对象意义下的对象,对象拷贝是禁止的。例如,Thread是对象语义,
2015-08-01 10:19:03 558
原创 二叉树的相关概念及性质
1. 树的度 节点拥有的子树数成为节点的度。 度为0的节点成为叶节点。 度不为0的节点称为分支节点。 树的度定义为所有节点中度的最大值。 2. 树的深度(或高度) 树中节点的最大层次称为树的深度(或高度)。 3. 满二叉树(Full Binary Tree) 如果二叉树中所有分支节点的度数都为2,且叶子节点都在同一层次上,则称这类二叉树为满二叉树。 4. 完全二叉树(C
2015-01-26 20:07:23 446
转载 字符串匹配的KMP算法
字符串匹配是计算机的基本任务之一。 举例来说,有一个字符串"BBC ABCDAB ABCDABCDABDE",我想知道,里面是否包含另一个字符串"ABCDABD"? 许多算法可以完成这个任务,Knuth-Morris-Pratt算法(简称KMP)是最常用的之一。它以三个发明者命名,起头的那个K就是著名科学家Donald Knuth。 这种算法不太容易理解,网上
2015-01-20 10:07:16 498
转载 linux模块导出符号EXPORT_SYMBOL与EXPORT_SYMBOL_GPL的区别
模块导出符号 Linux内核头文件提供了一个方便的方法用来管理符号的对模块外部的可见性,因此减少了命名空间的污染(命名空间的名称可能会与内核其他地方定义的名称冲突),并且适当信息隐藏。 如果你的模块需要输出符号给其他模块使用,应当使用下面的宏定义: EXPORT_SYMBOL(name); EXPORT_SYMBOL_GPL(name); 这两个宏均用于将给定的符号导出到模块外. _GPL
2014-12-25 17:13:45 4052
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人