你的位置:首页 > 操作系统

[操作系统]初识多线程


在学习多线程之前需要了解什么是进程?

进程是指在系统中正在运行的一个应用程序

每个进程之间是独立的,每个进程均运行在其专用且受保护的内存空间内

可以通过“活动监视器”查看Mac中所开启的进程

下一个问题什么是线程?

一个进程想要执行任务,必须得有线程(每一个进程只收要有一个主线程)

一个进程中的所有任务都在线程中执行

 

线程的串行

1.一个线程中任务的执行时串行的

2.如果要在一个线程中执行多个任务,那么只能一个一个地按顺序执行

 

 

那么问题又来了什么叫多线程呢?

1.一个进程中可以开多条线程,每条线程可以并行执行不同的任务

2.多线程技术可以提高程序的执行效率

如图:

 

多线程的原理

1.同一时间,CPU只能处理1条线程,只有1条线程在工作

2.多线程的并发执行,其实就是CPU在快速的进行切换

3.因为CPU切换非常快,就导致了多线程(其实是假象)

 

多线程的优缺点

优点:

1.能提高程序的执行效率

2.能适当提高资源利用率

 

缺点:

1.创建线程是有开销的,iOS下创建线程大约需要90毫秒的创建时间

2.如果开启大量的线程,会降低程序的性能

3.会使程序设计更加复杂