国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

GCD常用方法

2019-11-14 19:09:46
字體:
來源:轉載
供稿:網友

1.延遲操作

2.一次性代碼

3.隊列組

/** *  延遲執行 dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(2.0 * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{  // 2秒后異步執行這里的代碼...  });  延遲執行:不需要再寫方法,且它還傳遞了一個隊列,我們可以指定并安排其線程。  如果隊列是主隊列,那么就在主線程執行,如果隊列是并發隊列,那么會新開啟一個線程,在子線程中執行。 */-(void)test1 {    NSLog(@"打印當前線程---%@",  [NSThread currentThread]);             //延遲執行,第二種方式          //可以安排其線程(1),主隊列          dispatch_queue_t queue= dispatch_get_main_queue();         dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(5.0 * NSEC_PER_SEC)), queue, ^{                 NSLog(@"主隊列--延遲執行------%@",[NSThread currentThread]);             });             //可以安排其線程(2),并發隊列         //1.獲取全局并發隊列         dispatch_queue_t queue1= dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0);        //2.計算任務執行的時間         dispatch_time_t when=dispatch_time(DISPATCH_TIME_NOW, (int64_t)(5.0 * NSEC_PER_SEC));         //3.會在when這個時間點,執行queue中的這個任務         dispatch_after(when, queue1, ^{                 NSLog(@"并發隊列-延遲執行------%@",[NSThread currentThread]);             });}
/** *  2.使用dispatch_once一次性代碼  使用dispatch_once函數能保證某段代碼在程序運行過程中只被執行1次  static dispatch_once_t onceToken;  dispatch_once(&onceToken, ^{  // 只執行1次的代碼(這里面默認是線程安全的)  });  整個程序運行過程中,只會執行一次。 */- (void)test2 {    static dispatch_once_t onceToken;         dispatch_once(&onceToken, ^{                 NSLog(@"該行代碼只執行一次");             });}
/** *  隊列組 */- (void)test3 {        dispatch_group_t group =  dispatch_group_create();        dispatch_group_async(group, dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{                // 執行1個耗時的異步操作            });        dispatch_group_async(group, dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{                // 執行1個耗時的異步操作            });        dispatch_group_notify(group, dispatch_get_main_queue(), ^{                // 等前面的異步操作都執行完畢后,回到主線程...(結果處理)            });}

 

 

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 乐陵市| 开远市| 梓潼县| 杭锦后旗| 林口县| 余姚市| 潢川县| 阳新县| 根河市| 辽中县| 沙田区| 龙陵县| 虞城县| 中西区| 财经| 潍坊市| 无棣县| 抚州市| 建湖县| 仙居县| 文成县| 山西省| 方城县| 辽阳县| 姜堰市| 秦安县| 重庆市| 通榆县| 廉江市| 女性| 洛川县| 班玛县| 将乐县| 内乡县| 静海县| 阜阳市| 竹溪县| 乐陵市| 义马市| 温州市| 栖霞市|