现在有一个需求,俩个接口,要求两个接口都成功回调了,再刷新UI,求思路
串行,第二个请求等第一个成功再请求。
设置两个标记位,每个接口回调时都将自己的标记位设成已回调,之后检查所有标记位的状态,如果都已经回调,则执行刷新UI的操作。
dispatch_group_t group = dispatch_group_create();
dispatch_group_enter(group);
dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(1 * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{
NSLog(@"first API got data");
dispatch_group_leave(group);
});
dispatch_group_enter(group);
dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(2 * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{
NSLog(@"second API got data");
dispatch_group_leave(group);
});
dispatch_group_notify(group, dispatch_get_main_queue(), ^{
NSLog(@"UI refresh now");
});
dispstch group