OC 线程操作 - GCD快速迭代
生活随笔
收集整理的這篇文章主要介紹了
OC 线程操作 - GCD快速迭代
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
- (void)forDemo{//全都是在主線程操作的for (NSInteger i = 0; i<10; i++) {NSLog(@"--%@", [NSThread currentThread]);}/*2018-06-27 11:33:44.226664+0800 5線程操作-GCD-快速迭代[7715:77291] --<NSThread: 0x60800006a9c0>{number = 1, name = main}2018-06-27 11:33:44.226845+0800 5線程操作-GCD-快速迭代[7715:77291] --<NSThread: 0x60800006a9c0>{number = 1, name = main}2018-06-27 11:33:44.227048+0800 5線程操作-GCD-快速迭代[7715:77291] --<NSThread: 0x60800006a9c0>{number = 1, name = main}2018-06-27 11:33:44.227711+0800 5線程操作-GCD-快速迭代[7715:77291] --<NSThread: 0x60800006a9c0>{number = 1, name = main}2018-06-27 11:33:44.227796+0800 5線程操作-GCD-快速迭代[7715:77291] --<NSThread: 0x60800006a9c0>{number = 1, name = main}2018-06-27 11:33:44.227927+0800 5線程操作-GCD-快速迭代[7715:77291] --<NSThread: 0x60800006a9c0>{number = 1, name = main}2018-06-27 11:33:44.227986+0800 5線程操作-GCD-快速迭代[7715:77291] --<NSThread: 0x60800006a9c0>{number = 1, name = main}2018-06-27 11:33:44.228046+0800 5線程操作-GCD-快速迭代[7715:77291] --<NSThread: 0x60800006a9c0>{number = 1, name = main}2018-06-27 11:33:44.228111+0800 5線程操作-GCD-快速迭代[7715:77291] --<NSThread: 0x60800006a9c0>{number = 1, name = main}2018-06-27 11:33:44.228165+0800 5線程操作-GCD-快速迭代[7715:77291] --<NSThread: 0x60800006a9c0>{number = 1, name = main}*/
}-(void)GCD_apply{/**參數1:size_t iterations 便利次數參數1:dispatch_queue_t _Nonnull queue 隊列:只能穿進去并發隊列,主隊列 會死鎖 ,串行隊列和for循環一樣效果在主隊列,參數1:<#^(size_t)block#> ^(size_t 索引) {}主隊列也會參與這個操作, 并發執行*/dispatch_apply(10, dispatch_get_global_queue(0, 0), ^(size_t index) {NSLog(@"dispatch_get_global_queue ---- %zd--%@", index,[NSThread currentThread]);});dispatch_queue_t queue = dispatch_queue_create("并發", DISPATCH_QUEUE_CONCURRENT);dispatch_apply(10, queue, ^(size_t index) {NSLog(@"DISPATCH_QUEUE_CONCURRENT ---- %zd--%@", index,[NSThread currentThread]);});/*2018-06-27 11:41:46.924361+0800 5線程操作-GCD-快速迭代[7877:85649] 0--<NSThread: 0x608000074ac0>{number = 1, name = main}2018-06-27 11:41:46.924467+0800 5線程操作-GCD-快速迭代[7877:85688] 2--<NSThread: 0x60400007de40>{number = 4, name = (null)}2018-06-27 11:41:46.924468+0800 5線程操作-GCD-快速迭代[7877:85691] 3--<NSThread: 0x60c000465cc0>{number = 5, name = (null)}2018-06-27 11:41:46.924469+0800 5線程操作-GCD-快速迭代[7877:85690] 1--<NSThread: 0x608000265a00>{number = 3, name = (null)}2018-06-27 11:41:46.924526+0800 5線程操作-GCD-快速迭代[7877:85649] 4--<NSThread: 0x608000074ac0>{number = 1, name = main}2018-06-27 11:41:46.924554+0800 5線程操作-GCD-快速迭代[7877:85688] 5--<NSThread: 0x60400007de40>{number = 4, name = (null)}2018-06-27 11:41:46.924568+0800 5線程操作-GCD-快速迭代[7877:85691] 6--<NSThread: 0x60c000465cc0>{number = 5, name = (null)}2018-06-27 11:41:46.924602+0800 5線程操作-GCD-快速迭代[7877:85649] 8--<NSThread: 0x608000074ac0>2018-06-27 11:41:46.924639+0800 5線程操作-GCD-快速迭代[7877:85688] 9--<NSThread: 0x60400007de40>{number = 4, name = (null)}{number = 1, name = main}2018-06-27 11:41:46.924604+0800 5線程操作-GCD-快速迭代[7877:85690] 7--<NSThread: 0x608000265a00>{number = 3, name = (null)}*/
}
?
轉載于:https://www.cnblogs.com/qingzZ/p/9237408.html
創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎總結
以上是生活随笔為你收集整理的OC 线程操作 - GCD快速迭代的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: VUE开发小Tip
- 下一篇: MySQL Gap Lock问题