单个线程 - 串行,最后全班清一色佳能60D配的

来源:http://www.smtcxb.com 作者:娱乐影视 人气:95 发布时间:2019-09-22
摘要:有点故弄玄虚、故弄神秘之感,有很多bug。 版权归作者所有,任何形式转载请联系作者。 作者:鸡哥是也。(来自豆瓣) 来源: 4.0 多线程基础,4.0多线程 4.0-1.1 进程 概念 : 进程是指

有点故弄玄虚、故弄神秘之感,有很多bug。

图片 1

版权归作者所有,任何形式转载请联系作者。
作者:鸡哥是也。(来自豆瓣)
来源:

4.0 多线程基础,4.0多线程

4.0-1.1 进程

  • 概念 : 进程是指在系统中正在运行的一个应用程序 (操作系统中每一个 APP 就是一个进程)  
  • 性质 : 每个进程之间是独立的,每个进程均运行在其专用且受保护的内存空间内

    进程为应用程序开辟独立的内存空间;(这块内存空间是独立的,受保护的!进程和进程之间是互不干扰的!)

  • 举例 : 比如同时打开QQ、Xcode,系统就会分别启动2个进程
  • 查看进程 : 通过“活动监视器”可以查看Mac系统中所开启的进程
  • 所有的 UI 操作和 UI 事件都是进程

 

4.0-1.2 线程

  • 1个进程要想执行任务,必须得有线程(每1个进程至少要有1条线程)
  • 线程是进程的基本执行单元,一个进程(程序)的所有任务都在线程中执行( 线程执行进程/应用程序中的代码)
举例 : 比如使用酷狗播放音乐、使用迅雷下载电影,都需要在线程中执行

 

  • 主线程:在一个应用程序启动之后,会默认开启一条线程
  • 子线程:主线程之外的线程(手动开启的)

  单个线程 - 串行:

概念 : 1个线程中任务的执行是串行的(在线程中的代码是按顺序执行的!同一时间内,只能有一个代码块执行!)
解析 : 如果要在1个线程中执行多个任务,那么只能一个一个地按顺序执行这些任务          也就是说,在同一时间内,1个线程只能执行1个任务
举例 : 比如在1个线程中下载3个文件(分别是文件A、文件B、文件C), 只能一个一个的下载
总结 : 因此,也可以认为线程是进程中的1条执行路径

图片 2    

问题:为什么开启一条新线程之后就能解决卡住主线程这个问题了呢? 答: 因为线程和线程之间是并发执行(同时执行)!

    多个线程 - 并行:多线程

概念 : 1个进程中可以开启多条线程,每条线程可以并行(同时)执行不同的任务
优点 : 多线程技术可以提高程序的执行效率
举例 : 比如同时开启3条线程分别下载3个文件(分别是文件A、文件B、文件C), 则分别同时下载

图片 3     4.0-1.3 【区别】进程 & 线程   进程是由许多条线程组成,一个进程可以包含很多条线程,每条线程都可以执行不同的代码! 进程与线程的区别:

(1)调度:线程作为调度和分配的基本单位,进程作为拥有资源的基本单位
(2)并发性:不仅进程之间可以并发执行,同一个进程的多个线程之间也可并发执行
(3)拥有资源:进程是拥有资源的一个独立单位,线程不拥有系统资源,但可以访问隶属于进程的资源.
(4)系统开销:在创建或撤消进程时,由于系统都要为之分配和回收资源,导致系统的开销明显大于创建或撤消线程时的开销。

    4.0-2.1 多线程原理 多线程原理:(为什么多条线程之间可以并发(同时)执行呢?)

本质 : 同一时间,CPU只能处理1条线程,只有1条线程在工作(执行)          多线程并发(同时)执行,其实是CPU快速地在多条线程之间调度(切换)
原理 : 如果CPU调度线程的时间足够快,就造成了多线程并发执行的假象
思考:如果线程非常非常多,会发生什么情况?   答案 : 如果线程非常多,会在多条线程之间来回切换,消耗大量的 CPU 资源
  • 每个线程被调度的次数会降低
  • 线程的执行效率会下降
  CPU会在N多线程之间调度,CPU会累死,消耗大量的CPU资源 每条线程被调度执行的频次会降低(线程的执行效率降低)

iOS 8.0 主线程的默认堆栈大小也是 512K

     4.0-2.2 多线程优缺点 多线程的优点 :

(1) 能适当提高程序的执行效率:
  •  并发执行(同时执行): 线程和线程之间是同时执行的!(不同的线程中,任务同时执行)  
(2) 能适当提高资源利用率(CPU、内存利用率)

  多线程的缺点 : (既然多线程这么爽, 线程是不是越多越好呢?)

(1) 开启线程需要占用一定的内存空间(默认情况下,主线程占用1M,子线程占用512KB的栈区空间),如果开启大量的线程,会占用大量的内存空间,降低程序的性能
(2) 线程开启越多,CPU 就需要在多条线程之间来回切换,CPU在调度线程上的开销就越大,CPU就越累!
(3) 开启线程会提高代码的复杂性(会使应用程序增加很多代码!代码变多之后,程序复杂性就会提高!) 程序设计更加复杂:比如线程之间的通信、多线程的数据共享

  建议: 在移动应用的开发中; 一般只开3~5条线程!     4.0-2.3 多线程在iOS开发中的应用   主线程 / UI线程:

概念 : 一个iOS程序运行后,默认会开启1条线程,称为“主线程”或“UI线程” (程序启动创建的线程)
作用 : 
  • 显示 / 刷新UI界面
  • 处理UI事件(比如点击事件、滚动事件、拖拽事件等)
使用注意 : 
  • 别将比较耗时的操作放到主线程中
  • 要将耗时操作放在后台线程执行,否则会影响 UI 的流畅度,给用户一种'卡顿'的坏体验,破坏用户体验
  • 所有网络访问都是耗时操作!
解决方案 :
  • 将耗时操作放在子线程(后台线程、非主线程)
  • 那样就不会阻塞我们的主线程 , 一般开 3 ~ 6 条线程  
  好处 :
  • 在用户点击按钮那一刻就有反应
  • 能同时处理耗时操作和用UI控件的事件

  4.0-2.4 iOS中多线程的实现方案   图片 4                
如果你觉得本篇文章对你有所帮助,请点击右下部“推荐”,^_^
    作者:蓝田(Loto)
出处:
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接。  


如有疑问,请发送邮件至 [email protected] 联系我。       

多线程基础,4.0多线程 4.0-1.1 进程 概念 : 进程是指在系统中正在运行的一个应用程序 (操作系统中每一个 APP 就是一个进程) 性质 : 每个...

© 本文版权归作者  一爿橙子  所有,任何形式转载请联系作者。

图片 5

鸡哥是也。 评论 双宝斗恶魔 2018-03-03 22:17:14
人和人之间的 误解,战争 和争斗争吵就像这个电影一样, 愚蠢的人类。 唯有爱和包容和理解才能拯救世界。现实的生活也 是如此操蛋。 有多少人处于水深火热之中 。没钱没权没物质,短短100年活的像行尸走肉。 得不到自己真正想要的,真爱个狗屁,连自己想要的都得不到。 我们人类就是如此 。 生活对我们开了大大的玩笑。 我们还要面对人情冷暖和冷嘲热讽, 而且还有人要加害于我们。真是惨上加惨的人生, 天上不会掉馅饼,童话里都是骗人的。 人和人之间互相骗, 羊毛出在羊身上,想要得到就要付出,付出还要考虑到后果,一不小心就 出人命,和电影一样,惨绝人寰。 希望这个世界和平,希望我们都能得到自己想要的。得到的都是自己需要的。 去他的操蛋世界。 把 我们 每个人物质水平提高了 要什么有什么不就好了。 不嫉妒别人自己又拥有还能帮助这个世界,。

剧情很一般,但配乐很诡异、很紧张。

“这一张算是我风格转变的第一张,在这之前我的片子一直没有太多的突破,那一段时间很郁闷,一直在画画,希望自己心能静下来,最后想明白了一些道理。”

© 本文版权归作者  鸡哥是也。  所有,任何形式转载请联系作者。

标签:Home/2018-3-25
我的评分:7.0

“坚持自己的梦想走下去,不断学习,通过摄影去认识更多的朋友。”

人和人之间的 误解,战争 和争斗争吵就像这个电影一样, 愚蠢的人类。 唯有爱和包容和理解才能拯救世界。

如果生物(动物和植物)之间的基因发生相互渗透,世界会怎样?

图片 6

在目前的生物学上,动植物之间的DNA可以“杂交”吗?未来呢?

图片 7

图片 8

首先,我到了一个新的地方先会去观察周围环境,寻找这个拍摄地方它独特的地方,发现它的美。

图片 9

然后再联系事物与事物之间的关系,我觉得任何事物之间都是有联系的,所以我需要思考他们之间的联系。

“后来接触了摄影我开始喜欢上了摄影,一点点升级机器,逐渐从佳能换到了尼康,现在我用的是尼康D810,D750,用的镜头星空的话14-24mm多一些,一般16-35mm和24-70mm。”

作者:苏俊赫

“这是我在去年夏天拍摄的,当时去的时候天一直在下雨,连续下了两天,觉得心灰意冷,就在准备回去的时候,天空突然放晴了,真是柳暗花明。”

本文由必赢亚州手机网站-必赢手机登录网址发布于娱乐影视,转载请注明出处:  单个线程 - 串行,最后全班清一色佳能60D配的

关键词:

上一篇:心里竟有些微微的酸,你说我能算英雄吗

下一篇:没有了

最火资讯