首页 > 编程知识 正文

什么是多进程(什么是多线程、多进程?)

时间:2023-05-05 21:03:38 阅读:122103 作者:813

什么是多线程:

多线程是通过并行运行多个线程来执行多项任务,以提高系统效率。 线程是在同一时间需要完成多个任务时实现的。

使用线程的好处包括:

使用线程,可以在后台处理占用很长时间的程序中的任务

用户界面可以更有吸引力,如用户单击按钮以触发处理特定事件,或显示进度条以显示处理进度

程序的执行速度可能会加快

在完成输入用户、读写文件、向网络发送和接收数据等几个等待的任务时,线程会游泳。 在这种情况下,可以释放宝贵的资源,如内存消耗。

什么是多进程:

进程是程序在计算机上的执行活动。 当ttdxj运行程序时,你开始了进程。 很明显,程序已经死了,过程还活着。 进程分为系统进程和用户进程。 用于执行操作系统各种功能的所有进程都是系统进程,即正在运行的操作系统本身。 用户进程不需要我多说吧。 你启动的所有进程都是用户进程。 进程是操作系统分配资源的单位。

在Windows上,进程细分为线程。 也就是说,一个进程下有多个可以独立运行的更小单位。

如果同时可以在同一计算机系统上运行两个或多个进程,则这是多任务处理。 现代操作系统几乎都是多任务操作系统,可以同时管理多个进程的执行。 多任务的优点是显而易见的。 例如,您可以在收听mp3并连接到互联网的同时打印下载的文档。 这些任务不会互相干扰。 这里涉及并行问题。 俗话说,不能专心致志地使用。 这同样适用于计算机,原则上一个CPU只能分配给一个进程,而不能执行该进程。 我们通常使用的计算机上只有一个处理器。 也就是说,只有一颗心。 要专心致志地使用它,同时运行多个进程,必须使用并发技术。 实现技术相当复杂,最容易理解的是“时间片循环过程调度算法”。 其思想简单介绍如下:在操作系统的管理下,所有正在运行的进程都按顺序使用CPU,每个进程占用CPU的时间非常短(例如10毫秒),因此用户认为CPU按顺序服务于多个进程但实际上任何时候都只有一个过程占用CPU。

如果一台计算机上有多个CPU,则情况不同。 如果进程数小于CPU数,则可以将不同的进程分配给不同的CPU来执行。 这将导致多个进程实际上同时运行,这是并行的。 但是,如果进程数大于CPU数,则必须使用并发技术。

在Windows上,CPU的分配是按线程进行的,一个进程可能由多个线程组成。 在这种情况下,情况会更复杂,但简单来说,关系如下。

总线程数=CPU数:并行执行

总线程数CPU数:并发

并行执行的效率明显高于并行执行,因此多CPU计算机的多任务处理效率较高。 但是,如果在多CPU计算机上只运行一个进程(线程),则无法发挥多CPU的优势。

这里有多任务操作系统的问题。 多任务操作系统(如Windows )的基本原理是:操作系统将CPU的时间片分配给多个线程,每个线程在操作系统指定的时间片内完成。 请注意,这里的多个线程分为不同的进程。 操作系统不断地从运行一个线程切换到运行另一个线程,以这种方式往返。 从宏上看,多个线程似乎在一起运行。 由于这多个线程属于不同的进程,因此在我们看来,它们似乎是同时运行的多个进程,从而实现多任务处理

进程是静态的,线程是动态的。 它实现为操作系统在一个静态内存中同时运行多个程序,但每个程序又分为多个部分进行处理,从而提高效率。 并行是一个宏观图像,在微观上所有处理都是串行处理的。 (

总而言之,操作系统是多线程的,但CPU总是只能做一件事。 和人脑一样。 啊。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。