程序、进程、线程

  • 程序(programm)

概念:是为完成特定任务、用某种语言编写的一组指令的集合。即一段静态的代码,静态对象。

  • 进程(process)

概念:程序的一次执行过程,或是正在运行的一个程序。是一个动态的过程:他有它自身的产生、存在和消亡的过程。即生命周期。(如,运行时的QQ,运行时的MP3播放器)

说明:进程是作为资源分配的单位,系统在运行时会为每个进程分配不同的内存区域。程序时静态的,进程是动态的。

  • 线程(thread)

概念:进程可进一步细化为线程,时一个程序内部的一条执行路径。若一个进程同一时间并行执行多个线程,就是支持多线程的。

说明:线程作为调度和执行的单位,每个线程拥有独立的运行栈和程序计数器(PC)线程切换的开销小。

内存结构:进程可以细化为多个线程。

                  每个线程,拥有自己独立的:栈、程序计数器。

                  多个线程,共享同一个进程中的结构:方法区、堆。  

  • 使用多线程的优点:

背景:以单核CPU为例,只使用单个线程先后完成多个任务(调用多个方法),肯定比用多个线程来完成用的时间更短,那么为什么还仍需使用多线程呢?

多线程程序的优点:

1.提高应用程序的响应。对图形化界面更有意义,可以增强用户体验。

2.提高计算机系统CPU的利用率。

3.改善程序结构。将既长又复杂的进程分为多个线程,独立运行,利于理解和修改。

  • 何时需要使用多线程:

1.程序需要同时执行两个或多个任务。

2.程序需要是西安一些需要等待的任务时,如用户输入、文件读写操作、网络操作、搜索等。

3.需要一些后台运行的程序时。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值