
Java多线程
文章平均质量分 83
先锋 Coder
一年以上分布式系统开发经验的 Coder,从事过医疗、金融领域的00后新青年·
展开
-
【多线程】⭐️(java)本地模拟死锁的产生和排查方式
JAVA 中如何模拟死锁,以及如何排查死锁的位置原创 2024-12-01 17:58:12 · 674 阅读 · 0 评论 -
单例模式⭐️通过具体代码实现单例模式的不同实现以及周末总结
当第一次调用获取实例的方法时,会创建一个新的实例,并将其保存在静态变量中。所谓懒汉式是指用的时候再创建对象,这里的getInstance方法用了synchronized方法修饰,是为了避免多线程情况下,误生成了多个对象。单例模式是一种创建型设计模式,其目的是确保一个类只有一个实例,并提供一个全局访问点来获取该实例。线程类,测试类跟懒汉式结构一样,就不放代码了,直接看下测试结果。静态内部类是指通过内部静态类调用实现单例,测试结果如下。小伙伴们大家好,又是一个平平淡淡的周末,先来回顾下这周的情况吧。原创 2023-12-16 19:37:19 · 880 阅读 · 1 评论 -
ThreadLocal类的实例解析以及常用方法通过具体案例了解ThreadLocal的基本使用
前言小伙伴们大家好,谈到多线程就不可不谈解决线程安全 的操作类ThreadLocal了一、ThreadLocal 分析ThreadLocal会为每个线程分配独立的线程副本,解决并发访问冲突的问题,并且实现线程内的资源共享。举个例子,刚开始学Java的时候都少不了手动连接数据库吧,创建连接,填写用户名密码等(霍 死去的物种连接数据库库方式开始攻击我)原创 2023-12-10 17:52:56 · 2050 阅读 · 1 评论 -
ReentrantLock可重入锁⭐️通过具体案例分析其工作流程以及实现原理
前言小伙伴们大家好,上次分析volatile关键字,这次来分析下ReentrantLock,也就是可重入锁。原创 2023-11-30 22:53:24 · 1576 阅读 · 1 评论 -
volatile关键字⭐️通过案例分析与Synchronized的区别以及功能
前言小伙伴们大家好,上次分析了Synchronized关键字的特点及使用方式,多线程中经常提到的除了这个还有volatile,来分析该关键字的特点一、volatile的特点1.线程间可见性用volatile声明的共享变量,保证了某个线程修改了该变量的值,新值对其他线程来说是立即可见的,因为volatile关键字强制将修改后的值立即写入内存。1.1、案例。原创 2023-11-28 22:16:31 · 919 阅读 · 1 评论 -
Synchronized关键字⭐️从模拟并发场景案例到字节码底层原理的逐步分析
前言小伙伴们大家好,上次介绍了创建线程的四种方式,可以点击下方链接熟悉下,这次来分析线程使用中要考虑的线程安全问题一、线程不安全案例1、经典中的经典,抢票案例,如下图,创建一个SynTest类,定义了ticketNum代表票的数量,一个抢票的方法getTicketmain方法中循环创建了十五个线程模拟十五名用户在抢票,右键运行,看下结果,好家伙,问题大了,前三个线程买完票数量只减少一张,合着你们仨做一张座,后面更甚者,票数为零了还能抢到一张,站票是吧(三哥直呼内行)。原创 2023-11-21 16:02:28 · 83 阅读 · 1 评论 -
线程的各种创建方式⭐️从具体案例分析每种方式的步骤,以及之间的区别
前言小伙伴们大家好,今天来分析分析线程的创建以及使用方式一.线程创建的方式二.创建线程的具体实现1.继承Thread类创建线程;执行结果如下,可以看到在main方法中新建了一个线程去执行另一个输出语句,线程打印的位置也是在main方法打印之后2.实现runnable接口执行结果如下,不同的是实例化Thread对象时,传入一个实现了runnable接口的对象作为参数3. 实现callable接口。原创 2023-11-17 16:05:15 · 85 阅读 · 1 评论