一个程序有多个路径可以运行--->提升性能
三高--->不是指高血压那些
-
高可用--->操作不当,操作失败
-
高性能--->快、准
-
高并发
三高程序和网站是中高级架构师的必经之路
本章内容
多线程的基本概念
线程的实现
线程的五大声明周期(阻塞很关键)
线程的同步
生产者、消费者的线程通讯问题
指定重排、可重入锁等--->JUC并发编程基础
重点:线程的实现、线程的同步
线程的概念
线程是指:多条路径同时进行--->同时进行意味着多个任务--->多任务是开启多线程的出发点
多线程与方法的调用的区别
-
方法调用是指再一个方法中启用另一个方法,必须等另一个方法执行完毕以后才会往下进行
-
多线程是指两条并行的路径,这个方法把任务交给cpu然后往下进行等待cpu去调用给予的任务
程序、进程、线程的关系
-
程序:--->静态的概念代码的指令,是指我们编写好的指令集
-
进程:--->CPU调度到了的程序是动态的概念
-
线程:--->指一个进程中开辟多条路径,充分利用进程中的代码和路径
进程与线程比较图
-
进程是针对操作系统来说的,操作系统可以运行多个任务就是多进程
-
一个进程可以运行多个线程,多个顺序执行的流
-
进程包含线程,每个进程至少开辟一个主线程
核心概念
-
每个线程有自己的工作空间,工作内存与主内存交流
-
程序中有一个主存,如果开辟了线程那么每个线程只会跟工作内存(相当于教室)交互,工作内存与主内存交互
-
如果多个线程同时操作一个主存会涉及到主存与工作内存数据不一致的问题(数据的拷贝和覆盖)
-
-