多线程_pthread

ptread

#pragma mark---p
-(void)test
{
    /*
     void * 相当于OC里面的id
     */

    //使用pthread线程创建线程
    //声明一个线程的变量
    pthread_t threaId;
    /*
        1.要开辟的线程变量(的到线程的地址)
        2.线程的属性(传的线程的地址就可以改变这个地址里面的属性)
        3.函数指针(在这个子线程执行的任务)
        4.这个函数(任务)需要传递的参数

     */

//    pthread_create(<#pthread_t *restrict#>, <#const pthread_attr_t *restrict#>, <#void *(*)(void *)#>, <#void *restrict#>)

     pthread_create(&threaId, NULL, run, NULL);

    id str=@"ABC";

    //id 需要转void * 在ARC里,需要使用——bridge进行桥联
    //1.这里只是临时把str对象线程void *在这里临时使用,不盖被这个对象(str)的所有权
    //2.ARC把所有权交出去,字这个函数把str转为void *
    //如果使用MRC,这里不需要侨联,可以直接设置这个参数str
    //ARC自动内存管理,本质是编译器的特征,是在程序编译的时候,编译器帮我们添加retain,release,autorelease
    pthread_create(&threaId, NULL, run, (__bridge void *)(str));



}

/*
    IOS 开发,一般使用C语言的框架,.h文件没有注释
    去百度百科上查
 */

//函数
void *run(void *param)
{
    //放线程任务
    return NULL;
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值