IOS多线程
沐阳_
这个作者很懒,什么都没留下…
展开
-
iOS开发多线程—03线程安全
iOS开发多线程篇—线程安全 一、多线程的安全隐患资源共享1块资源可能会被多个线程共享,也就是多个线程可能会访问同一块资源比如多个线程访问同一个对象、同一个变量、同一个文件当多个线程访问同一块资源时,很容易引发数据错乱和数据安全问题示例一:示例二:问题代码: 1 // 2 // YYViewController.m 3 // 05-线原创 2015-06-07 16:52:19 · 429 阅读 · 0 评论 -
iOS中的多线程
iOS中的多线程 首先来了解什么是多线程,进程和线程的区别.进程: 正在进行中的程序被称为进程,负责程序运行的内存分配; 每一个进程都有自己独立的虚拟内存空间.线程:(主线程最大占1M的栈区空间,每条子线程最大占512K的栈区空间) 线程是进程中一个独立的执行路径(控制单元); 一个进原创 2015-07-07 13:49:29 · 368 阅读 · 0 评论 -
iOS开发多线程—05GCD介绍
iOS开发多线程篇—GCD介绍一、简单介绍1.什么是GCD?全称是Grand Central Dispatch,可译为“牛逼的中枢调度器”纯C语言,提供了非常多强大的函数 2.GCD的优势GCD是苹果公司为多核的并行运算提出的解决方案GCD会自动利用更多的CPU内核(比如双核、四核)GCD会自动管理线程的生命周期(创建线程、调度任务、销毁线程)程序员只需要告转载 2015-06-07 16:55:30 · 440 阅读 · 0 评论 -
IOS开发多线程—08GCD的常见用法
开发多线程篇—GCD的常见用法一、延迟执行1.介绍iOS常见的延时执行有2种方式(1)调用NSObject的方法[self performSelector:@selector(run) withObject:nil afterDelay:2.0];// 2秒后再调用self的run方法 (2)使用GCD函数dispatch_after(dispatch_ti原创 2015-06-07 21:16:50 · 462 阅读 · 0 评论 -
iOS开发多线程—07GCD的基本使用
iOS开发多线程篇—GCD的基本使用一、主队列介绍主队列:是和主线程相关联的队列,主队列是GCD自带的一种特殊的串行队列,放在主队列中得任务,都会放到主线程中执行。提示:如果把任务放到主队列中进行处理,那么不论处理函数是异步的还是同步的都不会开启新的线程。获取主队列的方式: dispatch_queue_t queue=dispatch_get_main_queue();转载 2015-06-07 21:14:30 · 452 阅读 · 0 评论 -
iOS开发多线程—01多线程简单介绍
iOS开发多线程篇—多线程简单介绍 一、进程和线程1.什么是进程 进程是指在系统中正在运行的一个应用程序每个进程之间是独立的,每个进程均运行在其专用且受保护的内存空间内 比如同时打开QQ、Xcode,系统就会分别启动2个进程通过“活动监视器”可以查看Mac系统中所开启的进程 2.什么是线程1个进程要想执行任务,必须得有线程(每1个进程至少要转载 2015-06-07 16:51:17 · 376 阅读 · 0 评论 -
iOS开发多线程—10NSOperation基本操作
iOS开发多线程篇—NSOperation基本操作一、并发数(1)并发数:同时执⾏行的任务数.比如,同时开3个线程执行3个任务,并发数就是3(2)最大并发数:同一时间最多只能执行的任务的个数。(3)最⼤大并发数的相关⽅方法- (NSInteger)maxConcurrentOperationCount;- (void)setMaxConcurrentOperationCou转载 2015-06-07 21:19:40 · 409 阅读 · 0 评论 -
iOS开发多线程—09NSOperation简单介绍
iOS开发多线程篇—NSOperation简单介绍一、NSOperation简介1.简单说明NSOperation的作⽤:配合使用NSOperation和NSOperationQueue也能实现多线程编程NSOperation和NSOperationQueue实现多线程的具体步骤:(1)先将需要执行的操作封装到一个NSOperation对象中(2)然后将NSOperatio转载 2015-06-07 21:17:14 · 408 阅读 · 0 评论 -
iOS开发多线程—04线程间的通信
iOS开发多线程篇—线程间的通信 一、简单说明线程间通信:在1个进程中,线程往往不是孤立存在的,多个线程之间需要经常进行通信 线程间通信的体现1个线程传递数据给另1个线程在1个线程中执行完特定任务后,转到另1个线程继续执行任务 线程间通信常用方法- (void)performSelectorOnMainThread:(SEL)aSelector withOb原创 2015-06-07 16:54:35 · 440 阅读 · 0 评论 -
iOS开发多线程—02创建线程
iOS开发多线程篇—创建线程一、创建和启动线程简单说明一个NSThread对象就代表一条线程创建、启动线程(1) NSThread *thread = [[NSThread alloc] initWithTarget:self selector:@selector(run) object:nil];[thread start];// 线程一启动,就会在线程thread中原创 2015-06-07 16:51:08 · 382 阅读 · 0 评论 -
iOS开发多线程—06线程的状态
iOS开发多线程篇—线程的状态一、简单介绍线程的创建: self.thread=[[NSThread alloc]initWithTarget:self selector:@selector(test) object:nil];说明:创建线程有多种方式,这里不做过多的介绍。 线程的开启:[self.thread start];线程的运行和阻塞:(1)设置转载 2015-06-07 16:55:37 · 368 阅读 · 0 评论 -
iOS多线程个人总结
零、线程的注意点(掌握)1.不要同时开太多的线程(1~3条线程即可,不要超过5条)2.线程概念1>主线程 : UI线程,显示、刷新UI界面,处理UI控件的事件2>子线程 :后台线程,异步线程3.不要把耗时的操作放在主线程,要放在子线程中执行一、NSThread(掌握)1.创建和启动线程的3种方式1>先创建,后启动// 创建NS原创 2015-07-07 14:08:46 · 406 阅读 · 0 评论