摘要: 步骤: (1) 得到 session 对象, NSURLSession *session = [NSURLSession sharedSession]; (2) 创建一个task, 任何一个请求都是一个任务NSURLSessionDataTask // 普通任务NSU... 阅读全文
posted @ 2016-07-03 21:40 zsper 阅读(114) 评论(0) 推荐(0) 编辑
摘要: Core Animation,中文翻译为核心动画,它是一组非常强大的动画处理API,使用它能做出非常炫丽的动画效果,而且往往是事半功倍。也就是说,使用少量的代码就可以实现非常强大的功能。开发步骤:创建一个新的图层;初始化一个CAAnimation对象,并设置一些动画相... 阅读全文
posted @ 2016-07-03 17:18 zsper 阅读(173) 评论(0) 推荐(0) 编辑
摘要: CALayer:(1) 在iOS中,你能看得见摸得着的东西基本上都是UIView,比如一个按钮、一个文本标签、一个文本输入框、一个图标等等,这些都是UIView (2) 其实UIView之所以能显示在屏幕上,完全是因为它内部的一个图层 (3) 在创建UIView对象时... 阅读全文
posted @ 2016-07-03 16:45 zsper 阅读(129) 评论(0) 推荐(0) 编辑
摘要: 什么是Quartz2D? Quartz 2D是一个二维绘图引擎,同时支持iOS和Mac系统Quartz 2D能完成的工作 绘制图形 : 线条\三角形\矩形\圆\弧等 绘制文字 绘制\生成图片(图像) 读取\生成PDF 截图\裁剪图片 自定义UI控件在使用Quartz ... 阅读全文
posted @ 2016-06-30 21:32 zsper 阅读(130) 评论(0) 推荐(0) 编辑
摘要: leetcode 中的两个集合操作题目:56 Merge Intervals – leetcode题目描述: Given a collection of intervals, merge all overlapping intervals.(意思将有交叉的集合合并) ... 阅读全文
posted @ 2016-06-30 17:38 zsper 阅读(122) 评论(0) 推荐(0) 编辑
摘要: 1 最大并发数最大并发数:同一时间最多只能执行的任务的个数。 最⼤大并发数的相关⽅方法- (NSInteger)maxConcurrentOperationCount;- (void)setMaxConcurrentOperationCount:(NSInteger)... 阅读全文
posted @ 2016-06-27 22:41 zsper 阅读(134) 评论(0) 推荐(0) 编辑
摘要: NSOperation的作⽤:配合使用NSOperation和NSOperationQueue也能实现多线程编程 NSOperation和NSOperationQueue实现多线程的具体步骤: 1)先将需要执行的操作封装到一个NSOperation对象中 2)然后将... 阅读全文
posted @ 2016-06-27 22:20 zsper 阅读(92) 评论(0) 推荐(0) 编辑
摘要: GCD 通信操作#pragma mark - GCD 通信- (void)sendMessage{ dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{ ... 阅读全文
posted @ 2016-06-27 19:37 zsper 阅读(141) 评论(0) 推荐(0) 编辑
摘要: GCD (纯C语言) 全称 Grand Central Dispatch,可译为“伟大的中枢调度器”优点: (1) GCD是为多核的并行运算提出的解决方案 (2) GCD会自动利用更多的CPU内核(比如双核、四核) (3) GCD会自动管理线程的生命周期(创建线程、调... 阅读全文
posted @ 2016-06-27 19:16 zsper 阅读(147) 评论(0) 推荐(0) 编辑
摘要: 多线程的安全隐患资源共享 一块资源可能会被多个线程共享,也就是多个线程可能会访问同一块资源. 比如多个线程访问同一个对象、同一个变量、同一个文件. 当多个线程访问同一块资源时,很容易引发数据错乱和数据安全问题. 例如:一个售票系统中,多个线程同时读写剩余的票数,那么就... 阅读全文
posted @ 2016-06-24 23:31 zsper 阅读(116) 评论(0) 推荐(0) 编辑