消息列队不做过多解释了,直接讲讲rabbitmq的基本概念和路由模式。 一、安装及基本概念 rabbitmq是基于erlang编写的,所以安装rabbitmq之前需要安装erlang的环境,配置环境变量,百度即可。 connectionFactory、connection、channel不做过多介绍 ...
分类:
其他好文 时间:
2017-05-22 16:40:02
阅读次数:
177
一、为什么要用队列?队列是一种数据结构,数据结构是一种存放数据的容器,和列表,元祖,字典一样,这些都属于数据结构。队列可以做的事情,列表都可以做,但是为什么我们还要去使用队列呢?这是因为在多线程的情况下,列表是一种不安全的数据结构。为什么不安全?可以看下面..
分类:
编程语言 时间:
2017-05-14 21:54:04
阅读次数:
226
一 、比较low的线程池 import queue,time,threading class My_theading_pool(object): def __init__(self,num = 20): self.queue = queue.Queue(num) #在类中分装一个队列,队列中最多容纳 ...
分类:
系统相关 时间:
2017-05-14 19:36:16
阅读次数:
254
队列概念 队列(Queue)是限定只能在一端插入、另一端删除的线性表。允许删除的一端叫做队头(front),允许插入的一端叫做队尾(rear),没有元素的队列称为“空队列”。 队列具有先进先出(FIFO)的特性。 普通顺序队列存在的问题 在普通顺序队列中,入队的操作就是先将尾指针rear右移一个单位 ...
分类:
编程语言 时间:
2017-05-14 18:04:18
阅读次数:
255
引言 - 补充好开始 消息队列在游戏服务器层应用非常广泛. 应用于各种耗时的IO操作业务上.消息队列可以简单理解为 [消息队列 = 队列 + 线程安全]本文参照思路如下, 最后献上一个大神们斗法的场景O(∩_∩)O哈哈~ 回调还是消息队列 -> 架构的选择 skynet 全局消息队列 -> skyn ...
分类:
其他好文 时间:
2017-05-10 18:48:39
阅读次数:
445
队列: 类似于生活中的排队购票系统,排头的人总是最先到的,也是最先取到票的。即先入先出,跟栈的后入先出是不同的。 误区:算法里的队列并不会像生活剧中一样,排头走后,后面的跟着前移一步,队列是一种存放数据的工具,从底部开始存数据,存放一个到排尾,数据的访问权就上移一位,取出排头的一个,数据的访问权也上 ...
分类:
其他好文 时间:
2017-05-10 17:50:11
阅读次数:
161
左式堆也是实现优先列队的一种数据结构,和二叉堆一样,左式堆也具有堆序性和结构性。 堆序性: 一个节点的后裔都大于等于这个节点。 结构性:左式堆也是二叉树,和二叉堆的唯一区别在于左式堆不是理想平衡的,实际上是趋于非常不平衡,对于堆中每一个节点X,左儿子的零路径长至少与右儿子的零路径长一样大,零路径长N ...
分类:
其他好文 时间:
2017-05-08 23:25:01
阅读次数:
281
循环队列 队列:先进先出,FIFO。 牺牲一个单元,使队列为空和只有一个元素时不要产生歧义 队首front,队尾rear,队列为a[front+1]~a[rear] 开一个大小为n的数组,a:array[0..n-1] of longint ,当rear=n-1时,需要在队尾增加一个数据,此时没有存 ...
分类:
其他好文 时间:
2017-05-06 14:12:54
阅读次数:
261
队列仅仅同意一端进行插入操作,还有一端进行删除操作。队列是一种先进先出的线性表。简称FIFO。同意插入的一段为队尾,同意删除的一端为队头。 顺序队列 与栈不同的是,队列的出队元素在队头,那么队列没出去一个元素,后面的元素就要依次像前移动。这样他的时间复杂度就是O(n)。 考虑上面截图的流程感觉效率非 ...
分类:
其他好文 时间:
2017-05-03 20:33:53
阅读次数:
200
队列:一种先进先出的数据结构,一端插入一端删除。 存储方式:分为顺序队列、链式队列 队列顺序存储: 头文件: 头文件实现: 测试文件: 队列的链式存储: 头文件: 头文件实现: 测试代码: ...
分类:
其他好文 时间:
2017-04-28 18:44:05
阅读次数:
182