手机APP开发 2016-12-05
1、并行-异步(ST1与ST2抢占资源)
1-1)、获取 并行(全局)队列 ,DISPATCH_QUEUE_PRIORITY_DEFAULT 为默认优先级。
dispatch_queue_t queue = dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT , 0);
1-2)、创建异步事件。
dispatch_async(queue, ^{ //do something 1 }); dispatch_async(queue, ^{ //do something 2 });
2、串行-同步(顺序执行)
2-1)、创建串行队列,DISPATCH_QUEUE_SERIAL 为串行
dispatch_queue_t queue = dispatch_queue_create("test", DISPATCH_QUEUE_SERIAL);
2-2)、创建同步事件。
dispatch_sync(queue, ^{ //do something 1 }); dispatch_sync(queue, ^{ //do something 2 });
3、并行-同步(顺序执行)
3-1)、获取 并行(全局)队列 ,DISPATCH_QUEUE_PRIORITY_DEFAULT 为默认优先级。
dispatch_queue_t queue = dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT , 0);
3-2)、创建同步事件。
dispatch_sync(queue, ^{ //do something 1 }); dispatch_sync(queue, ^{ //do something 2 });
4、串行-异步(怪怪的,测试结果,顺序执行)
4-1)、创建串行队列,DISPATCH_QUEUE_SERIAL 为串行
dispatch_queue_t queue = dispatch_queue_create("test", DISPATCH_QUEUE_SERIAL);
4-2)、创建异步事件。
dispatch_async(queue, ^{ //do something 1 }); dispatch_async(queue, ^{ //do something 2 });
一般1-3就够用了?!