本文从操作系统谈起,结合原子性,可见性,代码重排序,阐述多线程的不安全。
目录:
1.OS
2.进程与线程
3.多线程
3.1 什么是多线程
3.2 为什么使用多线程
3.3 多线程的缺点
3.4 理解线程不安全
3.5 保证线程安全的思路
OS(Operating System,简称OS)
一:概念
OS是Operating System的缩写,中文翻译就是操作系统,意思就是计算机管理控制程序,是计算机能够正常运行最基本的系统软件,任何软件都需要OS来支持。
二:作用
1.OS是管理计算机系统的全部硬件资源以及软件资源;
2.控制程序运行;改善人机界面;
3.为其它应用软件提供支持等,使计算机系统所有资源最大限度地发挥作用,为用户提供方便的、有效的、友善的服务界面。
进程与线程
一:进程:进程是系统分配资源的最小单位(OS拥有硬件资源分配权,分配的主体就是进程)
二:线程:线程是系统调度的最小单位(线程是系统分配CPU资源的最小单位)
三:区别及联系:一个进程内的线程之间是可以共享资源的。每个进程至少有一个线程存在,即主线程。
多线程
理解:进程可以简单的理解为一个可以独立运行的程序单位。它是线程的集合,进程就是有一个或多个线程构成的,每一个线程都是进程中的一条执行路径。
一