iOS开发中’thread’和’queue’有什么区别?

栏目: IOS · 发布时间: 5年前

内容简介:我保持理论上的讨论,因为你的问题没有任何代码样本.这两种结构都是提高应用响应能力所必需的.可用性.消息队列是一种数据结构,用于将消息从发送时起保存到接收方检索并对其进行操作的时间.通常,队列被用作“连接”生成者(数据)和“生成”的方式.消费者(数据).线程池是执行某种处理的线程池.线程池通常会附加一些线程安全队列(引用消息队列),以允许您排队要完成的作业.这里队列通常被称为“任务队列”.
在您阅读我的答案之前,您可能需要考虑阅读本文 – Migrating away from Threads

我保持理论上的讨论,因为你的问题没有任何代码样本.这两种结构都是提高应用响应能力所必需的.可用性.

消息队列是一种数据结构,用于将消息从发送时起保存到接收方检索并对其进行操作的时间.通常,队列被用作“连接”生成者(数据)和“生成”的方式.消费者(数据).

线程池是执行某种处理的线程池.线程池通常会附加一些线程安全队列(引用消息队列),以允许您排队要完成的作业.这里队列通常被称为“任务队列”.

因此,在某种程度上,线程池可能存在于生产者端(生成数据)或消费者端(处理数据).而“传递”数据的方式是通过队列.为什么需要这个“中间人” –

>它解耦系统.生产者不了解消费者和消费者.反之亦然.

>如果生产者数据出现峰值,消费者不会被数据轰炸.队列长度会增加,但消费者是安全的.

例:

在iOS中,主线程(也称为UI线程)非常重要,因为它负责将事件分派给适当的小部件,这包括绘图事件,基本上是用户看到的UI和.交互.

如果触摸屏幕上的按钮,UI线程会将触摸事件分派给应用程序,然后应用程序会设置其按下状态并将请求发布到事件队列. UI线程将请求出列并通知窗口小部件重绘自身.


以上所述就是小编给大家介绍的《iOS开发中’thread’和’queue’有什么区别?》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Building Websites with Joomla!

Building Websites with Joomla!

H Graf / Packt Publishing / 2006-01-20 / USD 44.99

This book is a fast paced tutorial to creating a website using Joomla!. If you've never used Joomla!, or even any web content management system before, then this book will walk you through each step i......一起来看看 《Building Websites with Joomla!》 这本书的介绍吧!

HTML 压缩/解压工具
HTML 压缩/解压工具

在线压缩/解压 HTML 代码

随机密码生成器
随机密码生成器

多种字符组合密码

HEX CMYK 转换工具
HEX CMYK 转换工具

HEX CMYK 互转工具