进程
进程可以简单的理解为一个可以独立运行的程序单位,是cpu进行分配和调度的基本单位。它是线程的集合,进程就是有一个或多个线程构成的,每一个线程都是进程中的一条执行路径。
线程
线程是进程的基本执行单元,一个进程想要执行必须得有线程。1个线程中任务执行是串行的,有多个任务的话,只能按照顺序执行这些任务,而多线程就是1个进程开启了多条线程,每条线程可以并行的执行不同的任务,从而提高程序的效率。
进程和线程的区别
每个进程都需要操作系统为其分配独立的内存地址空间,而同一进程中的所有线程都在同一内存地址空间中共享同一块内存空间中的资源。
多线程原理
多线程就是在同一时间内,CPU只能处理1条线程,多线程并发发执行就是CPU快速地在多条线程这间调度,如果cpu调度线程的时间足够快,就可以认为多线程在并发执行。
多线程优缺点
优点:能适当提高程序执行效率和cpu利用率.
缺点:开启线程需要占用一定的内存空间,如果开启大量线程,会占用大量内存空间,降低程序的性能;cpu在调度线程上的开销增大,需要来回切换;多线程编程设计也更复杂,容易出现线程安全问题。