欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

多线程浅谈

程序员文章站 2022-06-20 08:49:33
在多线程学习的开始,首先要了解几个重要的概念 一、线程和进程 进程:是操作系统进行资源分配和调度的独立单位 线程:是进程中独立运行的子任务 一个进程可能包含多个线程 二、随机 即使启动线程的代码有先后顺序,实际上线程的启动和调用是随机的,cpu时间片一直在切换 三、线程安全和非线程安全 在多线程下, ......

在多线程学习的开始,首先要了解几个重要的概念

一、线程和进程

进程:是操作系统进行资源分配和调度的独立单位

线程:是进程中独立运行的子任务

一个进程可能包含多个线程

 

二、随机

即使启动线程的代码有先后顺序,实际上线程的启动和调用是随机的,cpu时间片一直在切换

 

三、线程安全和非线程安全

在多线程下,使用加锁等技术保证共享数据不被脏读、篡改等是线程安全的,反之是非线程安全

 

四、守护线程和用户线程

线程有两种:守护线程用户线程

守护线程特征:当最后一个用户线程结束时,守护线程会随着jvm一起结束,gc就是最典型的守护线程

 

五、原子性

一个操作要么都做,那么都不做(不会存在只做了一半的情况)