IOS 如何处理多个网络请求的先后(依赖)关系
Posted xiyangxixia
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了IOS 如何处理多个网络请求的先后(依赖)关系相关的知识,希望对你有一定的参考价值。
函数介绍
dispatch_semaphore_create(M)
创建一个值为M的信号量
dispatch_semaphore_wait(信号量,等待时间)
如果该信号量的值大于0,则使其信号量的值-1,否则,阻塞线程直到该信号量的值大于0或者达到等待时间。
dispatch_semaphore_signal(信号量)
释放信号量,使得该信号量的值加1
dispatch_group_t group = dispatch_group_create();
dispatch_semaphore_t semaphore = dispatch_semaphore_create(0);
dispatch_queue_t queue = dispatch_queue_create(NULL, DISPATCH_QUEUE_SERIAL);
for (int j = 0; j < 4; j ++)
dispatch_group_async(group, queue, ^
if (j == 0)
[self loadOne:semaphore];
else if (j == 1)
[self loadTwe:semaphore];
else if (j == 2)
[self loadThree:semaphore];
else
[self loadFour:semaphore];
dispatch_semaphore_wait(semaphore, DISPATCH_TIME_FOREVER);
);
dispatch_group_notify(group, queue, ^
//所有请求返回数据后执行
NSLog(@"完成");
);
以上是关于IOS 如何处理多个网络请求的先后(依赖)关系的主要内容,如果未能解决你的问题,请参考以下文章