xcode - iOS 多个异步请求,返回必要的数据后才更新UI,如何实现
高洛峰
高洛峰 2017-04-17 16:46:13
[iOS讨论组]

iOS 多个异步请求,返回必要的数据后才更新UI,如何实现

高洛峰
高洛峰

拥有18年软件开发和IT教学经验。曾任多家上市公司技术总监、架构师、项目经理、高级软件工程师等职务。 网络人气名人讲师,...

全部回复(5)
大家讲道理

1.见发送10个网络请求,然后再接收到所有回应之后执行后续操作,如何实现?
2.见ios 想问一个很简单的异步问题

PHPz
dispatch_group_t group = dispatch_group_create();
dispatch_queue_t queue1 = dispatch_queue_create("12313", NULL);
dispatch_queue_t queue2 = dispatch_queue_create("4234234", NULL);
dispatch_queue_t queue3 = dispatch_queue_create("45678", NULL);
dispatch_group_async(group, queue1, ^{
    for (NSInteger i = 0; i < 10000; i++) {
        NSLog(@"1:%d",i);
    }
});
dispatch_group_async(group, queue1, ^{
    for (NSInteger j = 0; j < 10000; j++) {
        NSLog(@"2:%d",j);
    }
});
dispatch_group_async(group, queue2, ^{
    for (NSInteger k = 0; k < 10000; k++) {
        NSLog(@"3:%d",k);
    }
});
dispatch_group_async(group, queue3, ^{
    for (NSInteger z = 0; z < 10000; z++) {
        NSLog(@"4:%d",z);
    }

});

dispatch_group_notify(group, dispatch_get_main_queue(), ^{
    for (NSInteger a = 0; a < 10000; a++) {
        NSLog(@"最后:%d",a);
    }
});
大家讲道理

这个要不然自己控制,要不然用PromiseKit吧。。

PHPz

我猜是每个异步请求都会获取部分数据,所有异步请求完成过后,数据才是完整的,才能去显示UI 是吧。 可以设置一个标志位,每个请求成功加一,如果这个标志位等于请求的个数,则刷新UI。 不知道行不行

PHP中文网

设置BOOL类型的状态,判断BOOL变量的值,来确定是否已经全部结束

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号