1. 首页 > 星座 > 文章页面

线程是程序执行的最小单位(线程是程序执行的最小单位吗)

我们能真正从本质上了解线程吗

其实线程是程序执行的最小单位的问题并不复杂,但是又很多的朋友都不太了解线程是程序运程中执行流,因此呢,今天小编就来为大家分享线程是程序执行的最小单位的一些知识,希望可以帮助到大家,下面我们一起来看看这个问题的分析吧!

本文目录

以下哪个方法用于定义线程的执行体【】进程中使用的线程越多,执行速度就越快,这种说法对不对以下哪个方法用于定义线程的执行体【】

C、run()

线程概念和多线程模型

run()方法是用来定义这个线程在启动的时候需要做什么,但是,直接执行run()方法那就不是线程,必须使用start()启动,那样才是线程。

线程是进程中的实体,一个进程可以拥有多个线程,一个线程必须有一个父进程。线程不拥有系统资源,只有运行必须的一些数据结构;与父进程的其它线程共享该进程所拥有的全部资源。线程可以创建和撤消线程,从而实现程序的并发执行。一般,线程具有就绪、阻塞和运行三种基本状态。

扩展资料:

在多线程OS中,线程是能独立运行的基本单位,因而也是独立调度和分派的基本单位。由于线程很“轻”,故线程的切换非常迅速且开销小(在同一进程中的)。

在一个进程中的多个线程之间,可以并发执行,甚至允许在一个进程中所有线程都能并发执行;同样,不同进程中的线程也能并发执行,充分利用和发挥了处理机与外围设备并行工作的能力。

参考资料来源:百度百科-线程

进程中使用的线程越多,执行速度就越快,这种说法对不对

不对

完成一个任务可以有多进程和多线程两种方式,到底哪种方式快呢?通常人们认为Windows系统是以进程为单位分配CPU时间片的,那么使用多个进程就可以多分得一些CPU时间,自然就会比使用单独进程多个线程的方式快一点了。事实上这种情况并不绝对正确,首先,创建进程比创建线程要多占用系统资源,系统资源不足往往会引起系统性能的下降,导致任务完成的比较慢。其次,由于多个进程要操作同一个数据集合,必然会因为数据争用导致进程状态改变,同多个线程状态改变相比,进程切换要使用更多的CPU时间。最后,使用单进程方式,由于进程少,每个进程又可以较多的获得CPU时间片,从而能够很大的改善进程的性能。由此可见,并不是使用多进程处理数据就一定比使用多个线程的单进程快。图(1)显示了使用两种方式的程序性能变化曲线,从图上可以看出,无论使用何种方式,进程和线程都不是越多越好,两种方式都存在一个临界点,超过这个临界点,都会因为频繁的进程或线程状态切换而造成程序性能下降。使用多进程方式在到达临界点之后再增加进程就会引起性能的下降,而且下降速度比单进程多线程方式到达临界点之后的下降速度快,这是因为进程切换比线程切换更费时。

关于线程是程序执行的最小单位的内容到此结束,希望对大家有所帮助。

多线程系列 多get一点的预备知识