java的线程和进程,java的线程和cpu的线程

  java的线程和进程,java的线程和cpu的线程

  00-1010 1.了解流程1,了解线程2,流程属性2。为什么要有线程3。知道线程和进程的区别。Linux中的线程1,内核状态和用户状态2。PCB描述线程5,多种类型1,单进程单线程2,多进程单线程3,单进程多线程4,多进程多线程5,进程内线程分析。

  

目录

 

  00-1010当一个可执行程序运行时,可以把它看作一个进程。

  进程也是操作系统分配资源的最小单位。

  每个进程对应内核中的一个PCB对象。

  线程是一个“执行流”。每个线程都可以按照顺序执行自己的代码。多个线程“同时”执行多个代码。

  00-1010进程id:身份表示

  一组内存指针:指进程运行时所依赖的指令和数据在内存中的位置。

  状态:进程正在运行还是正在休眠?

  进程优先级:这个进程是由CPU先执行还是放在后面。

  进程的上下文:保存上一个在CPU上执行的进程的进度,以便下一个进程在CPU上时可以继续执行。

  进程的记帐信息:它记录了一个进程在CPU上执行了多长时间。通过这个时间,限制一个进程不要占用CPU太久,导致其他进程无法执行。

  微观上,一个CPU一次只能执行一个线程命令。

  进程太多,CPU太少

  通过“并发”的方式,CPU可以快速调度,微观上还是串行的,但是调度速度极快,宏观上感觉是多个进程齐头并进。

  00-1010首先,‘并发编程’变成了‘刚需’。

  单核CPU的发展遇到了瓶颈。为了提高计算能力,需要多核CPU。并发编程可以充分利用多核CPU资源。有些任务场景需要‘等待IO’,为了让等待IO的时间做一些其他的工作,也需要并发编程。

  其次,虽然多进程可以实现并发编程,但是线程比进程轻。

  创建线程比创建进程更快。

  销毁线程比销毁进程快。

  调度线程比调度进程快。

  00-1010如果把一个进程看成一个工厂,线程就是工厂里的几条流水线。

  线程实际上包含在进程中。

  一个进程可以有多个线程。

  每个线程都有自己的逻辑(命令)来执行,每个线程都是一个独立的“执行流”

  同一进程中的许多线程共享一些资源。

  

一、认识进程

 

  00-1010如果你去银行存款,你得和窗口的柜员互动。

  存款的过程:

  1.先和柜员沟通,存多少钱,存到那个账户。

  2.把卡和钱交给出纳员。

  以上都是可以感知的动作,相当于用户模式下的代码执行。

  3.出纳员拿到东西,在电脑上操作。

  以上是用户察觉不到的,相当于内核状态下的代码执行。

  用户状态:权限比较小,只能进行一些低风险的操作。

  内核状态:远高于用户状态。

  

1,线程初识

 

  内核只知道PCB

  一个线程对应一个PCB。

  一个流程可能有多个PCB。

  这三个PCB对应的是java.exe这个进程的三个线程,这几个从属进程在内核中也叫做“线程组”,类似于MySql中的多对一。

  00-1010打个比喻,吃苹果,分100个苹果。

  线程:分配资源,房间表

  流程:安排孩子吃苹果。

  

2,进程属性

 

  

二、为什么要有线程

 

  

三、认识线程与进程的区别

 

  

四、Linux中的线程

 

  一个线程中的最大线程数是多少

  1、CPU的数量。

  2.它还与线程执行的任务类型有关。

  CPU密集型:程序一直在执行计算任务。

  IO密集型:主要用于输入输出操作。

  多个线程抢夺一个资源可能会导致线程不安全。

  如果一个线程抛出异常,没有处理好,那么整个进程就会终止,其他线程就无法工作。

  这就是这篇关于Javaweb进程和线程的图形分析的文章。有关Javaweb进程的更多信息,请搜索以前关于流行IT的文章或继续浏览下面的相关文章。我希望你将来能支持流行它!

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: