数据结构map与set

map与set基本使用

2017-06-28 11:44:18

阅读数 217

评论数 0

生产者、消费者模型

linux中当两个线程要访问同一块临界区域时,比如一个读进程,一个写进程,一个在临界区域写数据,另一个在临界区域读数据,被访问的这块临界区域通常叫缓冲区,而往这块缓冲区里写数据的叫生产者,在这块缓冲区里读数据的叫消费者。要实现消费者与生产者的关系,要满足一个原则,就是“321“原则。3代表的是有三...

2017-06-14 13:52:07

阅读数 196

评论数 0

线程之互斥锁与死锁

互斥锁: 1、互斥锁基本原理:      互斥锁是一个二元变量,其状态为开锁(允许0)和上锁(禁止1),将某个共享资源与某个特定互斥锁在逻辑上绑定(要申请该资源必须先获取锁)。      (1)访问公共资源前,必须申请该互斥锁,若处于开锁状态,则申请到锁对象,并立即占有该锁,以防止其他线程访问该资...

2017-06-05 14:00:31

阅读数 9253

评论数 4

线程初识

线程的概念1、在进程中,进程承担资源分配,而线程是调度的基本单位,线程在进程内部运行,那么,什么是线程呢?简单来说一个线程是进程的一个顺序执行流。同类的多个线程共享一块内存空间和一组系统资源,线程本身有一个供程序执行时的堆栈。线程在切换时负荷小,因此,线程也被称为轻负荷进程。一个进程中可以包含多个...

2017-06-03 23:08:51

阅读数 333

评论数 0

堆知识总结

堆是一种完全二叉树,堆结构的二叉树存储方式分为大堆和小堆。大堆:每个父节点都大于孩子节点小堆:每个父节点都小于孩子节点创建一个大堆:向下调整算法思路:我们知道堆均是完全二叉树,因此一个父节点的子节点即child = parent*2+1;因此在向下调整算法中从根节点开始逐一与它的孩子进行比较,每次...

2017-06-03 16:09:00

阅读数 159

评论数 0

提示
确定要删除当前文章?
取消 删除
关闭
关闭