基础语法-多线程

  • 多线程的实现方案:pthread / NSThread / GCD / NSOperation

  1. pthread

基于C的原生多线程方法,需要手动管理线程的生命周期

//导入头文件
#import<pthread.h>
//创建线程对象
pthread_t thread;
/**
    1. 线程对象地址
    2. 线程的一些属性 NULL
    3. 指向函数的指针 
    4. 函数需要接受的参数
*/
pthead_create(&thread, NULL, task, NULL);
void *task(void *param){
     //任务
     return NULL
}
  1. NSThread

基于OC的方法,需要手动管理线程的生命周期

//创建线程1
NSThread *thread = [[NSThread alloc] initWithTarget: self selector: @selector(run:) object: @"go"];
   thread.name  = @"线程1";
   //优先级(取值范围0.0-1.0,1.0最高,默认0.5)
   thread.threadPriority = 1.0
   [thread start];
//创建线程2
[NSThread detachNewThreadSelector: @selector(run:) withObject: @"go"];
//创建线程3
[self performSelectorInBackGround: @selector(run:) withObject: @"go"];
//function
-(void)run: (NSString *)param{
    //任务
}

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 在这篇文章中,我将为你整理一下 iOS 开发中几种多线程方案,以及其使用方法和注意事项。当然也会给出几种多线程的案...
    张战威ican阅读 3,736评论 0 0
  • 在这篇文章中,我将为你整理一下 iOS 开发中几种多线程方案,以及其使用方法和注意事项。当然也会给出几种多线程的案...
    伯恩的遗产阅读 275,126评论 251 2,330
  • 想说很多话 可是好累哦 又什么都不想说 带新生唱歌觉得好难管哦有的人好傲哦 生气 ... 哦,打雷了,要下雨了 想念
    闫丽彬阅读 1,053评论 0 0
  • 熟悉却抑制着思想与行动,一如死灰天空上渺小的点。
    周淡皮阅读 1,131评论 0 0
  • 前些日子经他人推荐,入手了一本《woop思维心理学》。封面号称这是开启梦想与成功的秘密,这个口气特别大,能...
    渊叔阅读 4,852评论 0 2