你的位置:首页 > 软件开发 > 操作系统 > iOS学习41之多线程

iOS学习41之多线程

发布时间:2016-05-18 00:00:20
1. 多线程概述 1> 程序、进程和进程的概念程序:由源代码生成的可执行应用。(例如:QQ.app)进程:一个正在运行的程序可以看做一个进程。(例如:正在运行的QQ就是一个进程),进程拥有独立运行所需的全部资源。线程:程序中独立运行的代码段。(例如:接收QQ消息的代码)一个 ...

1. 多线程概述

 1> 程序、进程和进程的概念

  • 程序:由源代码生成的可执行应用。(例如:QQ.app)

  • 进程:一个正在运行的程序可以看做一个进程。(例如:正在运行的QQ就是一个进程),进程拥有独立运行所需的全部资源。

  • 线程:程序中独立运行的代码段。(例如:接收QQ消息的代码)

  • 一个进程是由一或多个线程组成。进程只负责资源的调度和分配,线程才是程序真正的执行单元,负责代码的执行。

 2> 单线程

  • 每个正在运行的程序(即进程),至少包含一个线程,这个线程叫主线程。

  • 主线程在程序启动时被创建,用于执行main函数。

  • 只有一个主线程的程序,称作单线程程序。

  • 在单线程程序中,主线程负责执行程序的所有代码(UI展现以及刷新,网络请求,本地存储等等)。这些代码只能顺序执行,无法并发执行。

 3> 多线程

  • 拥有多个线程的程序,称作多线程程序。

  • iOS允许用户自己开辟新的线程,相对于主线程来讲,这些线程,称作子线程。

  • 可以根据需要开辟若干子线程

  • 子线程和主线程 都是 独立的运行单元,各自的执行互不影响,因此能够并发执行。

 4> 单线程和多线程区别

  • 单线程程序:只有一个线程,即主线程,代码顺序执行,容易出现代码阻塞(页面假死)。

  • 多线程程序:有多个线程,线程间独立运行,能有效的避免代码阻塞,并且提高程序的运行性能。

  • 注意:iOS中关于UI的添加和刷新必须在主线程中操作。

2. NSThread与NSObject创建多线程

 1> NSThread创建方法

 

海外公司注册、海外银行开户、跨境平台代入驻、VAT、EPR等知识和在线办理:https://www.xlkjsw.com

原标题:iOS学习41之多线程

关键词:IOS

IOS
*特别声明:以上内容来自于网络收集,著作权属原作者所有,如有侵权,请联系我们: admin#shaoqun.com (#换成@)。