Grand Central Dispatch :牛逼的中枢调度器。 1.优势 最大的优势就是自动,自动利用更多的CPU,自动管理线程的生命周期,不需要任何线程管理代码。 将需要执行的任务添加到队列中,GCD会自动将队列中的人物取出,放到对应的线程中去执行。 遵循原则:FIFO原则:先进先出,后进后出
分类:
其他好文 时间:
2016-03-23 17:02:50
阅读次数:
184
*队列的特点是先进先出 *在顺序结构中, 是用一个数组作为排队的场地. *要想要更好利用空间, 解决队列的假溢出问题, 我们使用循环队. *顺序循环队列的几个关键位置图示如下: (图片来源域陈越老师主编的<<数据结构>>) 分割线 *标准的抽象数据类型定义 类型名称:队列(Queue) 操作对象集:
分类:
其他好文 时间:
2016-03-21 23:01:11
阅读次数:
272
消息队列是啥?我觉得大家都心知肚明,已经众所周知到不用解释的程度。不过,但凡学习、解释一样东西,都应该遵循
“它是什么?”、
“做什么用?”、
“为啥要用它”、
“它有啥分类”
这个套路,所以首先还是要给个定义。世间无定义,老子只好自己给个定义:消息队列嘛,首先是个队列,先进先出;然后,它传递消息。。。一、消息队列的作用
有高手总结为:
1、异步处理
将不是必须的业务逻辑进行异步处理...
分类:
其他好文 时间:
2016-03-20 09:19:48
阅读次数:
219
栈:后进先出(LIFO)的有序集合 队列:先进先出(FIFO)的有序集合 栈方法声明: 首先,采用数组来保存栈里的元素。 序号 方法 说明 1 push ( element(s) ) 添加一个(或几个)新元素到栈顶 2 pop ( ) 移除栈顶的元素,同时返回被移除的元素 3 peek ( ) 返回
分类:
编程语言 时间:
2016-03-20 00:32:06
阅读次数:
229
1.有一个长度未知的数组a,如果它的长度为0就把数字1添加到数组里面,否则按照先进先出的队列规则让第一个元素出队。 我当时忘记了出队是shift还是unshift,结果竟然误用了unshift,晕死了! 分析:这道题考了与函数有关的的两个非常重要的概念:自执行函数和闭包。但是不难,答案应该是5。 确
分类:
其他好文 时间:
2016-03-18 17:48:56
阅读次数:
222
集合①LIst②Set③Map④泛型⑤Collections 一、List:有顺序,可重复实现类:1、ArrayList 广泛,适用于查询,增删不频繁的(类似数组,其长度可按需增大,增删效率慢)2、LinkedList 中间频繁增删的,查询效率低(双向链表,先进先出,不支持随机查找,必须重头开始查找
分类:
编程语言 时间:
2016-03-13 23:48:22
阅读次数:
249
最简单的结构:线性表 先进先出的结构:队列 先进后出的结构:栈 线性表 线性表数据结构具有以下特征: 有且只有一个“首元素” 有且只有一个“末元素” 除末元素之外,其余元素均有惟一的后继元素 除首元素之外,其余元素均有惟一的前驱元素 对于线性表,主要可进行以下操作: 添加结点 ...
分类:
其他好文 时间:
2016-03-06 15:50:19
阅读次数:
204
使用GCD开发的基本思路基本思想:将任务(操作)放在队列中去执行任务使用block定义队列负责调度任务执行所在的线程以及具体的执行时间队列的特点是先进先出(FIFO)的,新添加至队列的操作都会排在队尾.GCD的函数都是以dispatch开头的注意:队列不是线程,也不对应CPU。队列:..
分类:
移动开发 时间:
2016-03-02 11:20:31
阅读次数:
203
队列是一种常用的数据结构,它跟栈一样,操作都受到限制,队列只允许从一端进数据,另一端出数据。队列跟栈不同,栈是一种“后进先出”的模式,而队列是一种“先进先出”的操作模式。就好比日常排队一样,先排队的先出,后排队的后出。例如,进入队列的顺序是1,2,3,4,5则出队列..
分类:
其他好文 时间:
2016-02-29 00:48:24
阅读次数:
227
(1)GCD,纯C,自动管理生命周期,大中央调度,要理解队列与任务,任务在队列里面去除遵循先进先出的准则。 (2)NSOperation,OC,基于GCD的封装,自动管理生命周期,把操作(NSOperation)放进队列(NSOperationQueue)里面,里面的额操作会异步执行。 线程间怎么通
分类:
编程语言 时间:
2016-02-20 01:47:19
阅读次数:
188