![](https://img-blog.csdnimg.cn/20201014180756930.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
java多线程
文章平均质量分 82
倔强中的小白
小白一只。
展开
-
Java 线程池
为什么会想到写这篇文章呢,其实网上也挺多的,主要是这次和同学讨论到一个问题(就是线程工厂创建线程的时候,再次对runnable的run方法捕获异常),就涉及到线程池,而且有些疑问,然我去看一些博客的时候也写的不对,最后还是通过看源码解决自己的疑问。首先,这篇博客会分析一些源码,线程池的设计,然后要注意的一些事项。如果认真读完,保证有收获的。基本概念线程池是什么线程池(Thread Pool)是一种基于池化思想管理线程的工具,经常出现在多线程服务器中,如MySQL 数据库连接池。通常,在..原创 2020-05-15 17:40:46 · 454 阅读 · 0 评论 -
Synchronized关键字
想必大家对这个关键字都很熟悉,毕竟用起来的比较方便和简单的,不需要像用重入锁的时候释放锁,而且此从jdk1.6开始,对Synchronized有很大的优化,性能也得到了一定的提升。本文将主要围绕Synchronized展开,介绍其用法、原理、以及它是如何保证原子性、可见性和有序性的。1:Synchronized用法Synchronized其实是一种内部锁,内部锁是一种排它锁,能够保证原...原创 2018-08-27 17:51:57 · 363 阅读 · 0 评论 -
volatile关键字
Java语言为了解决并发程序中存在的原子性、可见性、有序性问题,听过了一些列处理并发的关键字。如synchronized、volatile、final等,上一篇中讲解了synchornizedguan关键字的用法和原理等。在文本中,我们来分析另外一个关键字----volatile。1:volatile:轻量级同步锁volatile本身的意思就是“易挥发”的意思,其实就是不稳定的意思。其作用...原创 2018-08-28 10:23:43 · 272 阅读 · 0 评论 -
CAS分析
一:概述 CAS,Compare And Swap,即比较并交换。在Java多并非的操作中,很多地方都用到了CAS操作,如AQS同步组件、Atomic原子类操作都是以CAS实现的,甚至concurrentHashMap在版本1.8中也调用了CAS+Synchronized。可以说CAS在JUC中举足轻重。二:CAS分析 在CAS中有三个参数:内存中存放的值V...原创 2018-10-19 11:24:36 · 473 阅读 · 0 评论 -
java线程状态及其转换
接下来主要是聊聊,有关java线程的生命周期,和java线程几种状态是如何转换的,以及有关线程中局部变量的一些线程安全问题。通用的线程生命周期通用的线程生命周期基本就五种状态了,如下图所示: 通用线程状态1:初始状态,指的是线程已经被创建,这里仅仅是编程语言层面的创建,但对于操作系统来说,还不运行分配cpu执行。2:可运行状态,指的是线程可以分配CPU执行,在这种状态下,对于...原创 2019-04-01 11:08:09 · 196 阅读 · 0 评论