关于GCD的使用

在iOS开发中,对于多线程,大多数开发者使用苹果提供的简单的GCD,

频繁的使用GCD,并发队列并不会去管理最大并发数,无限制提交任务给并发队列,会给性能带来问题。

for循环中使用block,并且需要block执行完成后继续执行后续代码

dispatch_group_t group = dispatch_group_create();
for (UIImage *image in imageArray) {
                    dispatch_group_enter(group);
[image_   jkr_fastCompressToDataLength:500000 withBlock:^(NSData *data) {
  dispatch_group_leave(group);
}];
}

dispatch_group_notify(group, dispatch_get_main_queue(), ^{
                NSDictionary *args = @{@"success":@true,
                                       @"error":@"",
                                       @"data":baseList};
                [self.jsBridge postNotificationJavaScript:[self returnResult:self.callbackMap[@"device.selectPhotos"] args:args] toWebView:self.webView];
            });

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏一“技”之长

iOS开发之Accounts框架详解 原

    Accounts框架是iOS原生提供的一套账户管理框架,其支持Facebook,新浪微博,腾讯微博,Twitter和领英账户管理的功能。需要注意,在iO...

631
来自专栏Guangdong Qi

Face ID和Touch ID 译文and集成篇Face ID和Touch ID

2306
来自专栏FreeBuf

极客DIY:使用Arduino制作一块开源手表

1 - 引言 首先让我们看下这个项目要考虑到的问题: 1.)使用100%Arduino兼容性硬件 2.)保证存储器足够大可以装下大量的稍后会扩展的新内容 ...

2136
来自专栏青玉伏案

iOS开发之浅谈MVVM的架构设计与团队协作

今天写这篇博客是想达到抛砖引玉的作用,想与大家交流一下思想,相互学习,博文中有不足之处还望大家批评指正。本篇博客的内容沿袭以往博客的风格,也是以干货为主。 由于...

2038
来自专栏Rindew的iOS技术分享

iOS百度地图POI详情检索与路径规划(附Demo)

2816
来自专栏iOS Developer

iOS开发之OCR光学识别储蓄卡以及信用卡

1454
来自专栏程序员笔记

从头开始写一个 Chrome 插件

1565
来自专栏移动端开发

环信SDK 头像、昵称、表情自定义和群聊设置的实现 二(附源码)

前言: 环信SDK 头像、昵称、表情自定义和群聊设置的实现 一(附源码)    接着上面说的,我们来说说表情,它在哪里可以自定义,怎么写,那个方法是添加表情...

2146
来自专栏進无尽的文章

聊聊基于MVP 模式下的软件设计

MVC的缺点在于并没有区分业务逻辑和业务展示, 这对单元测试很不友好,不光不利于单元测试而且不利于代码的阅读和维护,眉毛胡子一把抓是后续难以维护的症结所在。

951
来自专栏猿湿Xoong

咦,Oreo怎么收不到广播了?

1904

扫码关注云+社区