一.异步加载网络图片

1、ATS

(1)简介

从iOS9.0开始,如果按照以前的方式写代码,在访问网络的时候 ,会报以下警告信息:

App Transport Security has blocked a cleartext HTTP (http://) resource load since it is insecure.

Temporary exceptions can be configured via your app's Info.plist file.

原因:iOS9.0引入了新特性(App Transport Security),简称ATS,应用传输安全。

新特性要求App内访问的网络必须使用 https 协议。

(2)解决方案

方法一:

1>  在Info.plist中添加 NSAppTransportSecurity 类型 Dictionary

2>  在 NSAppTransportSecurity 下添加 NSAllowsArbitraryLoads 类型 Boolean,设置为 YES

方法二:

在 info.plist 中 添加

<key>NSAppTransportSecurity</key>

<dict>

<key>NSAllowsArbitraryLoads</key>

<true/>

</dict>

方法三:

代码块

2.写代码

(1)第一步:定义属性

(2)第二步:初始化控件

(3)第三步:下载图片(异步下载图片)

3、线程间通信

(1)什么叫做线程间通讯?

在一个进程中,线程往往不是孤立存在的,多个线程之间需要经常进行通信。

小秘买完烟,必须得回来给班长汇报一下。

(2)线程间通信的体现

1个线程传递数据给另一个线程

在一个线程中执行完特定任务后,转到另一个线程继续执行任务

(3) 线程间通信常用方法

- (void)performSelectorOnMainThread:(SEL)aSelector withObject:(nullable id)arg waitUntilDone:(BOOL)wait;

- (void)performSelector:(SEL)aSelector onThread:(NSThread *)thr withObject:(nullable id)arg waitUntilDone:(BOOL)wait;

GCD方法演示   记得还要在plist文件的源文件中加上那上句话(上面内容有)

转载于:https://www.cnblogs.com/huangfang1314/p/5582494.html

ios开发多线程篇--异步加载网络图片GCD相关推荐

  1. iOS开发swift版异步加载网络图片(带缓存和缺省图片)

    iOS开发之swift版异步加载网络图片 与SDWebImage异步加载网络图片的功能相似,只是代码比较简单,功能没有SD的完善与强大,支持缺省添加图片,支持本地缓存. 异步加载图片的核心代码如下: ...

  2. iOS开发UI篇—懒加载

    iOS开发UI篇-懒加载 1.懒加载基本 懒加载--也称为延迟加载,即在需要的时候才加载(效率低,占用内存小).所谓懒加载,写的是其get方法. 注意:如果是懒加载的话则一定要注意先判断是否已经有了, ...

  3. IOS开发之异步加载网络图片并缓存本地实现瀑布流(一)

    2019独角兽企业重金招聘Python工程师标准>>> 版权声明:本文为博主原创文章,未经博主允许不得转载. [objc] view plaincopy </pre>&l ...

  4. iOS开发多线程篇—自定义NSOperation

    iOS开发多线程篇-自定义NSOperation 一.实现一个简单的tableView显示效果 实现效果展示: 代码示例(使用以前在主控制器中进行业务处理的方式) 1.新建一个项目,让控制器继承自UI ...

  5. android 图片加载 软引用_Android 异步加载网络图片并缓存到本地 软引用 学习分享(转)...

    迪 王. 于 星期四, 20/02/2014 - 21:36 提交 在android应用开发的时候,加载网络图片是一个非常重要的部分,很多图片不可能放在本地,所以就必须要从服务器或者网络读取图片. 软 ...

  6. iOS开发多线程篇—多线程简介

    iOS开发多线程篇-多线程简介 一.进程和线程 1.什么是进程 进程是指在系统中正在执行的一个应用程序 每一个进程之间是独立的.每一个进程均执行在其专用且受保护的内存空间内 比方同一时候打开QQ.Xc ...

  7. iOS开发多线程篇—线程的状态

    iOS开发多线程篇-线程的状态 一.简单介绍 线程的创建: self.thread=[[NSThread alloc]initWithTarget:self selector:@selector(te ...

  8. Cocos2d-x教程(36)-多线程与异步加载

    欢迎加入Cocos2d-x 交流群:193411763 转载时请注明原文出处 :http://blog.csdn.net/u012945598/article/details/41312345 --- ...

  9. Cocos2d-x的多线程与异步加载实现详解

    Cocos2d-x是一个单线程循环的引擎,引擎通过每一帧之间更新游戏中各元素的状态,以保证它们之间互不干扰,这个过程中尽管看起来成程序像是 在并行运行,但实际上却是一个串行过程. 举例来说,在游戏进行 ...

最新文章

  1. Microbiome:所谓的“富集培养”获得的微生物真的都是被“富集”出来的吗?(一作解读)...
  2. 使用Spring框架的好处
  3. POJ - 1743 Musical Theme(二分+后缀数组+差分数组)
  4. 图片压缩质量并保存指定尺寸
  5. 树链剖分 完美的想法
  6. .Net Core配置与自动更新
  7. 【Groovy】Groovyc: Internal groovyc error: code 1 的解决方法
  8. linux工作原理fiq,读Kernel感悟-Linux内核启动-内核的生成 - kernel hacker 修炼之道——李万鹏 - 博客频道 - CSDN...
  9. 大数据_Flink_数据处理_案例WorldCount_批处理版---Flink工作笔记0008
  10. ios 团购信息客户端demo(二)
  11. “绿坝—花季护航”使用全攻略
  12. 高速公路车路协同网络需求研究
  13. 李迅雷:大城市化和居民加杠杆能支撑房价多久
  14. 【五校联考2015 9.13】池塘
  15. RFBnet论文翻译:感受野块网络对于精确的和快速的目标检测
  16. android ibeacon距离,iBeacon使用蓝牙连接范围精确到1-3米
  17. Day6-2021.1.14 计算机网络面经从基础到总结+力扣 链表 题目的整理。
  18. ubuntu安装zsh及环境配置
  19. 一个有用的数据库:中国研究数据服务平台(CNRDS)
  20. 客户端访问方式MAPI

热门文章

  1. tfs 点获取最新,如果检查到大量冲突
  2. 用友BQ商业智能设计模式——概述
  3. 读《大话设计模式》有感
  4. BugkuCTF web基础$_GET
  5. Putty、Xshell连接Linux
  6. 苹果宣布创立欧洲首个iOS开发中心
  7. 深入理解计算机系统-之-数值存储(六)--以不同的方式窥视内存
  8. 路由器学习之静态路由实验
  9. 数学之美 系列一 -- 统计语言模型
  10. Imc连环画《红楼梦》