摘要: 1.添加数据添加数据的步骤:(1)获得工程中的模型数据的bundle路径 读取数据模型中的模型文件(2)确定要把数据存储到哪里(本地地址)(3)把工程中的数据模型中的数据 持久化存储到 本地 并绑定上下文 (4) 创建模型子类的对象,并完成赋值 (5)保存上下文(1)获得工程中的模型数据的bundl... 阅读全文
posted @ 2016-01-20 22:19 彩虹丶直至黑白 阅读(263) 评论(0) 推荐(1) 编辑
摘要: GCD默认已经提供了全局的并发队列供整个应用使用,所以可以不用手动创建。 创建全局队列的函数为dispatch_queue_t q = dispatch_get_global_queue(long identifier, unsigned long flags) 参数类型为:long ident... 阅读全文
posted @ 2016-01-18 21:52 彩虹丶直至黑白 阅读(546) 评论(1) 推荐(1) 编辑
摘要: ...................死锁的第一种情况:....................NSLog(@"=================4");dispatch_sync(dispatch_get_main_queue(), ^{NSLog(@"=================5");}... 阅读全文
posted @ 2016-01-18 21:48 彩虹丶直至黑白 阅读(1510) 评论(0) 推荐(0) 编辑
摘要: 使用Group实现:先执行一系列操作(在group中),执行完成后再执行别的操作。1.创建group及任务队列(目的是让group中的所有任务执行完再执行别的任务) dispatch_group_t group = dispatch_group_create(); //创建一个group disp... 阅读全文
posted @ 2016-01-18 18:26 彩虹丶直至黑白 阅读(789) 评论(0) 推荐(0) 编辑
摘要: iOS开发多线程篇—GCD介绍一、简单介绍1.什么是GCD?全称是Grand Central Dispatch纯C语言,提供了非常多强大的函数2.GCD的优势GCD是苹果公司为多核的并行运算提出的解决方案GCD会自动利用更多的CPU内核(比如双核、四核)GCD会自动管理线程的生命周期(创建线程、调度... 阅读全文
posted @ 2016-01-16 15:24 彩虹丶直至黑白 阅读(172) 评论(0) 推荐(0) 编辑
摘要: 一、并发数(1)并发数:同时执⾏行的任务数.比如,同时开3个线程执行3个任务,并发数就是3(2)最大并发数:同一时间最多只能执行的任务的个数。(3)最⼤大并发数的相关⽅方法- (NSInteger)maxConcurrentOperationCount;- (void)setMaxConcurren... 阅读全文
posted @ 2016-01-16 11:54 彩虹丶直至黑白 阅读(130) 评论(0) 推荐(0) 编辑
摘要: 在使用NSMutableDictionary的时候经常会使用setValue forKey与setObject forKey,他们经常是可以交互使用的,代码中经常每一种的使用都有。1,先看看setValue: forKey:的定义@interfaceNSMutableDictionary(NSKey... 阅读全文
posted @ 2016-01-15 11:47 彩虹丶直至黑白 阅读(194) 评论(0) 推荐(1) 编辑
摘要: RunLoop 是 iOS 和 OSX 开发中非常基础的一个概念,这篇文章将从 CFRunLoop 的源码入手,介绍 RunLoop 的概念以及底层实现原理。之后会介绍一下在 iOS 中,苹果是如何利用 RunLoop 实现自动释放池、延迟回调、触摸事件、屏幕刷新等功能的。 RunLoop 的... 阅读全文
posted @ 2016-01-14 14:37 彩虹丶直至黑白 阅读(265) 评论(0) 推荐(0) 编辑
摘要: 1.解析json数据NSDictionary *citiesDic = [CoreJSONSerialization coreJSONSerialization:@"cities"];NSDictionary *infor = [citiesDic objectForKey:@"infor"];NS... 阅读全文
posted @ 2016-01-12 18:38 彩虹丶直至黑白 阅读(259) 评论(0) 推荐(0) 编辑