ios面试题及进阶知识点学习
小鱼的池塘
这个作者很懒,什么都没留下…
展开
-
ios 关于GCD多线程使用
一,线程、任务、队列,异步执行、同步执行、并行队列、串行队列都是什么鬼?1,线程、任务、队列线程:程序执行任务的最小调度单位 任务:简单讲就是gcd里面block块里面执行的内容 队列:用来存放任务的一个数组2,异步执行、同步执行、并行队列、串行队列异步执行:具备开辟一个新线程的能力,任务创建后可以先绕过,回头在执行 同步执行:不具备开辟新线程的能力,只有任务执行完后才能离开 并行队列:多个原创 2017-03-23 00:54:16 · 345 阅读 · 0 评论 -
多线程GCD之图片异步加载主队列刷新UI
再来说说GCD里面的异步加载,直接上代码,亲测/* 常见的图片加载+UI刷新 * 1,dispatch_async 异步队列 * 开启一个新的线程来执行耗时操作,但是同时又不会阻塞线程,因为任务创建后可以在不完成的情况下直接跳过block块去做下一项任务,等里面的任务完成后又会回到block块里面继续执行 * 比如,实现图片的加载是比较耗时的,所以必须要在异步线程里面执行 * 加载完事后需要原创 2017-03-23 14:37:41 · 2769 阅读 · 0 评论 -
多线程GCD之dispatch_semaphore_t
/* * 线程并发操作,意思就是说你开辟的这个线程里面最大允许的并行队列数是多少,那么实际超出的的部分队列就必须等待。 * dispatch_semaphore_create(para):创建一个信号量,参数是并发的初始值 * dispatch_semaphore_signal:发送一个信号量,表示我即将离开这个队列,通知等待着你可以准备进入 * dispatch_semaphore_wai原创 2017-03-24 13:12:17 · 616 阅读 · 0 评论