什么是线程什么是进程

2021-08-25  本文已影响0人  Riya

先举一个例子:

当我们使用VsCode时,如果开启了自动保存功能。那么我们在写代码时,VsCode需要做两件事情,第一件事情是,监听我打字输入的状态;第二件事情是,每5分钟保存一次代码。
如果这个进程中只有一个线程的话,那么当VsCode在对代码进行保存时,它就不能监听我打字输入的状态了,我的任何输入都会没有响应,这种用户体验是十分不好的。
所以我们需要使用多线程,每个线程处理自己那一部分任务,而不用关心会和其他线程的冲突。线程1用于响应键盘,线程2用于自动保存。

进程

进程是并发执行程序在执行过程中资源分配的最小单位

线程

线程是程序执行的最小单位

线程与进程的区别

多线程的好处:

  1. 线程更轻量级,线程创建和销毁的代价更小
  2. 线程提高了性能。虽然线程从宏观角度来说是并行的,但其实从微观角度来说,还是串行的,从这一个角度来看,并没有提高性能。但是,当某些线程涉及到等待资源的时候(比如等待输入),多线程允许进程中的其他线程继续执行,而不是整个进程被阻塞,因此,提高了cpu的利用率。
  3. 在多cpu或者多核的情况下,线程宏观,微观都是并行的。
上一篇下一篇

猜你喜欢

热点阅读