OC中,创建线程的方法是什么?怎样指定在主线程中执行代码?如何延时执行代码?

OC中,创建线程的三种方法:

1、NSThread ;特点:使用更加面向对象,简单易用,可直接操作线层对象

创建线程方法一:NSThread * thread = [[NSThread alloc]initWithTarget:self  selected:@selected(run) object:nil];

【注释】initWithTarget:在哪里执行;object:参数 ; 之后会告诉CPU准备就绪,随时接受CUP的调度,当CUP调度当前线程之后,就会在线程的thread方法中执行self的run方法;

创建线程方法二:[NSThread detachNewThreadSelector:@selector(run) toTarget:self withObject:nil];

创建线层方法三:[self performSelectorInBackground:@selector(run) withObject:nil];

方法二与方法三的优点:简单快捷;缺点:无法对线程进行更详细的设置;

2、GCD , 目的是取代NSThread等线程技术、充分利用设备的多核;

3、NSOperation,基于GCD、比GCD多了一些更简单试用的功能,使用起来更加面向对象

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容