码迷,mamicode.com
首页 > 编程语言 > 详细

多线程随笔知识点总结3

时间:2016-08-04 23:04:49      阅读:193      评论:0      收藏:0      [点我收藏+]

标签:

 pthread演练

 1.基本概念

 pthread是POSIX多线程开发框架,是跨平台的C语言框架,在苹果的头文件中并没有太多的注释

 2.演练

#import <pthread.h>
// 创建线程,并且在线程中执行 demo 函数
- (void)pthreadDemo {
    /**
     参数:
     1> 指向线程标识符的指针,C 语言中类型的结尾通常 _t/Ref,而且不需要使用 *
     2> 用来设置线程属性
     3> 新建立的线程执行代码的函数
     4> 运行函数的参数
     返回值:
     - 若线程创建成功,则返回0
     - 若线程创建失败,则返回出错编号
     */
    pthread_t threadId = NULL;
    NSString *str = @"Hello Pthread";
    int result = pthread_create(&threadId, NULL, demo, (__bridge void *)(str));

    if (result == 0) {
        NSLog(@"创建线程 OK");
    } else {
        NSLog(@"创建线程失败 %d", result);
    }
}
// 后台线程调用函数
void *demo(void *params) {
    NSString *str = (__bridge NSString *)(params);
    NSLog(@"%@ - %@", [NSThread currentThread], str);
    return NULL;
}

小结:
在C语言中并没有对象的概念,对象是以结构体的方式来实现的
C语言中的void*和OC中的id是等价的
混合开发时,如果在C和OC之间进行数据传递,需要用_bridge进行桥接,桥接的目的是为了告诉编译器如何管理内存

 

多线程随笔知识点总结3

标签:

原文地址:http://www.cnblogs.com/bixiangbei/p/5738470.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!