java并发基础
文章平均质量分 53
我的大男子主义
有所坚持,有所热爱,为之坚持,为之热爱
展开
-
多线程(上)
上一篇文章我们介绍了进程、线程、并发、并行,这篇文章,我们来讨论以下多线程,想参考上一篇文章的点击这里 多线程--上1.线程2.为什么要使用多线程3.多线程带来的问题 1.线程 生命周期 初始状态、运行状态、阻塞状态、等待状态、超时等待状态、终止状态。 状态及转化过程 下面这张图参考自SnailClimb的一篇文章,点击这里参考原文 2.为什么要使用多线程 首先从宏观角度来看 1)线程是轻量级的进程,在程序执行中,它是最小的单位。在线程之间进行的调度、切换等耗费的资源要远小于进程之间耗费的资源。原创 2022-01-14 11:55:20 · 64 阅读 · 0 评论 -
线程与进程、并发与并行
线程与进程、并发与并行线程与进程关系堆和方法区并发和并行 线程与进程关系 先上图: 看图:一个进程可以有多个线程,线程之间共享进程的栈和方法区资源。每个线程有自己的虚拟机栈、本地方法栈、程序计数器。 线程与进程最明显的不同就是进程基本上是独立的,线程之间可以互相影响。线程负担小、开销小,但是不利于资源的管理和保护。 堆和方法区 堆和方法区是所有进程共享的资源,堆是进程中最大的一块内存,主要用于存放创建的对象,方法区主要用于存放已经被加载的类、常量、静态变量、即时编译器编译后的代码等数据 并发和并行 并发原创 2022-01-12 21:40:54 · 112 阅读 · 0 评论 -
进程、线程
进程、线程1.进程2.线程 1.进程 什么是进程呢? 进程就是程序的一次执行过程,是系统运行程序的基本单位,所以,进程是动态的。系统运行一个程序也就是进程从创建到运行起来再到消亡的过程。 我们可以打开我们电脑的任务管理器,我们就能看见有许多进程正在运行当中。 我们在编写java程序时,经常会看到一段代码:public static void main(String[] args){} 这是代码中的main函数,当我们启动main函数,实际上,就是启动了一个JVM的进程,而我们用的main函数所在的线程就是这原创 2022-01-11 22:12:59 · 183 阅读 · 0 评论