![](https://img-blog.csdnimg.cn/20210527071813138.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
并发编程
文章平均质量分 78
并发编程总结
予你成诗
有人说,学习是一种信仰
展开
-
面试分析:你懂不懂threadlocal?
面试分析:你懂不懂threadlocal?原创 2022-09-03 15:48:09 · 205 阅读 · 0 评论 -
AQS-AbstractQueuedSynchronizer
AQS-AbstractQueuedSynchronizer原创 2022-08-01 15:58:46 · 137 阅读 · 0 评论 -
一篇长文---深入理解synchronized
两万字和你一起深入理解synchronized及其底层原理原创 2022-07-27 21:33:10 · 287 阅读 · 0 评论 -
深入理解CAS及Java中的原子类
深入理解CAS及其相关知识、Java中的原子类原创 2022-07-06 20:35:41 · 435 阅读 · 0 评论 -
深入理解java线程,并分析部分源码
深入理解java线程,并分析部分源码原创 2022-06-10 15:47:53 · 230 阅读 · 0 评论 -
ScheduledThreadPoolExecutor补充及源码分析
ScheduledThreadPoolExecutor补充及源码分析原创 2022-06-05 10:27:22 · 143 阅读 · 0 评论 -
Java并发线程池底层原理及部分关键源码
Java并发线程池底层原理及部分关键源码分析原创 2022-06-04 15:39:55 · 231 阅读 · 0 评论 -
并发List、Set、 ConcurrentHashMap底层原理
是原创 2022-05-31 16:43:28 · 408 阅读 · 0 评论 -
缓存一致性协议和CPU缓存架构(MESI协议)、伪共享
缓存一致性协议、CPU高速缓存架构、MESI协议、伪共享原创 2022-05-30 23:05:11 · 1076 阅读 · 5 评论 -
浅析java内存模型---JMM模型、顺序一致性模型、volatile内存语义、内存屏障
浅析java内存模型---JMM模型、顺序一致性模型、volatile内存语义、内存屏障原创 2022-05-29 22:21:16 · 430 阅读 · 1 评论 -
时间处理的坑:SimpleDateFormat与DateTimeFormatter
时间处理的坑:SimpleDateFormat与DateTimeFormatter原创 2022-03-03 15:45:37 · 5884 阅读 · 2 评论 -
并发编程之可见性、并发、并行
并发编程之并发、并行、可见性原创 2021-10-31 15:10:38 · 285 阅读 · 0 评论 -
java并发编程---锁介绍(乐观锁/悲观锁、独占锁/共享锁、公平锁/非公平锁、互斥锁/读写锁、可重入锁、不可重入锁、自旋锁、分段锁)
目录乐观锁悲观锁独占锁共享锁公平锁非公平锁互斥锁读写锁不可重入锁可重入锁自旋锁分段锁睡觉前,突然有感而发,这世界就是一个unfairsync,而不是fairsync,于是想到了锁,总结一下部分锁的概念,具体的使用本人也在不断学习中,后期学习ok也会和大家分享乐观锁乐观锁,可能看名字不知道什么意思,说简单点就是,乐观锁,乐观的认为,自己需要的数据,不会被别人更改,但是为了保证安全,在更新的时候,还是会判断一个这个期间有没有别的线程更新这个数据,通俗点原创 2021-06-25 22:59:48 · 254 阅读 · 0 评论 -
多线程方法---sleep()---线程休眠
目录Thread.sleep()---可以让当前线程休眠.sleep(long millis).sleep(long millis, int nanos)Thread.sleep()---可以让当前线程休眠.sleep(long millis)括号内参数为毫秒值,这个方法可以让正在执行的当前线程休眠,或者说暂停执行,所谓的正在执行的当前线程,就是this.currentThread()返回的结果编写测试类package my.notes;import java.util原创 2021-04-17 22:17:33 · 1954 阅读 · 0 评论 -
多线程方法---isAlive()---判断当前线程是否存活
目录多线程方法---isAlive()---判断当前线程的活动状态什么是活动状态开始测试多线程方法---isAlive()---判断当前线程的活动状态什么是活动状态线程已经启动,且尚未终止的状态,就是活动状态开始测试编写测试类package my.notes;import java.util.HashMap;import java.util.Map;import java.util.concurrent.*;public class MyTest {原创 2021-04-17 22:00:10 · 530 阅读 · 0 评论 -
多线程方法---currentThread()---返回正在调用此代码段的线程
目录Thread.currentThread()方法,可以返回正在调用此代码段的线程单线程测试多线程测试Thread.currentThread()方法,可以返回正在调用此代码段的线程单线程测试package my.notes;import java.util.HashMap;import java.util.Map;import java.util.concurrent.*;public class MyTest { public static void ma原创 2021-04-17 21:54:19 · 517 阅读 · 0 评论 -
使用多线程的方式4---线程池
目录什么是线程池线程池的好处常见的四种线程池FixedThreadPoolCachedThreadPoolSingleThreadExecutorScheduledThreadPool既然要使用线程池,我们就得先了解一下线程池的好处什么是线程池要用线程池,我们就得先知道为什么要用线程池,什么是线程池,线程池就是一个存储线程的容器,当我们需要线程的时候,可以从线程池取出来一个线程,去用,用完再放回去,下一次还可以继续取出来用线程池的好处1、能够降低对资源的消耗,原创 2021-04-17 10:59:03 · 132 阅读 · 0 评论 -
使用多线程的方式3---callable(带返回值)及FutureTask原理
目录实现callable接口(无返回值)创建FutureTask实例(无返回值)运行测试(无返回值)实现callable接口(有返回值)创建FutureTask实例(有返回值)运行测试(有返回值)探究一下futureTask多线程使用方式---实现callable接口实现callable接口(无返回值)package my.notes;import java.util.concurrent.Callable;public class MyCallable i原创 2021-04-16 15:36:42 · 305 阅读 · 0 评论 -
使用多线程的方式2---Runnable
目录实现Runnable接口运行测试如何使用实现了Runnable的类使用Runnable的优点注意!!!!!!!!!!!!!!!!!!!!!!!使用多线程的第二种方式:实现Runnable接口实现Runnable接口package my.notes;public class MyRunnable implements Runnable{ @Override public void run() { System.out.println("原创 2021-04-15 07:47:30 · 110 阅读 · 0 评论 -
使用多线程方式1----Thread
目录线程原理验证线程的随机性注意!!!!!!!!!!!!!!!!!!!!!!!使用多线程方式1----继承Thread我们首先来创建一个类,继承 Thread:public class MyThread extends Thread{ @Override public void run() { System.out.println("这是创建出来的线程"); }}然后我们写一个测试类,来测试我们的是否成功:public cla原创 2021-04-14 21:24:17 · 88 阅读 · 0 评论 -
多线程1---进程、多线程、使用多线程的方式
目录什么是进程什么是线程线程的调度创建多线程的方式1、继承 Thread 类2、实现Runnable3、实现Callable4、线程池什么是进程说起多线程,那就得说起进程,什么是进程,进程就是操作系统结构的基础,是每一次程序的执行,可以简单粗暴一点的理解,你用电脑操作的每一个exe程序就是每一个进程进程是受操作系统管理的基本运行单元当你在Windows启动一个JVM虚拟机,就是创建了一个进程,每执行一个main方法,就创建一个进程什么是线程线程可以理解原创 2021-04-14 21:07:26 · 79 阅读 · 0 评论 -
高并发、分布式、多线程的区别---多线程序
来分享一下高并发、多线程、分布式的相关知识,后续开始给大家分享多线程的相关知识~ (当然,本人水平有限,是分享截至目前为止自己知道的,还在不断学习中)首先第一点,要明白一件事,高并发不等于多线程也不等于分布式,虽然他们经常同时出现,但是本质上是相互独立的,不要混淆,高并发在某些时候是可以用多线程来处理,但是并不是所有场景都可以用多线程,比如本楼主做过的这几个业务,要求高并发的话也没法用多线程处理:1、查询,就一个查询,这个你怎么用多线程处理,没办法,就是单线程的查询,请求进来,直接查,然后返回.原创 2021-03-28 09:20:51 · 591 阅读 · 2 评论