作用1:改变Disaptch Queue的优先级
该方法可用于变更自己创建的Dispatch Queue的优先级。
dispatch_queue_t myDispatchQueue = dispatch_queue_create("com.faterman.gcd_demo.myDispatchQueue", NULL);
dispatch_queue_t globalDispatchQueue = dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_HIGH, 0);
dispatch_set_target_queue(myDispatchQueue, globalDispatchQueue);
dispatch_set_target_queue(dispatch_object_t object, dispatch_queue_t queue)
其中object为自己建立待修改的dispatch queue,queue为参照queue。
因为Main Dispatch Queue 和Global Dispatch Queue均为全局的,所以不可作为第一个参数,如果作为了,不能预知会出现什么结果。
作用2:作为Disaptch Queue的执行阶层。
在必将不可并行执行的处理追加到多个Serial Dispatch Queue中的时候,如果使用dispatch_set_target_queue可防止并行处理。