首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
Java并发编程
程序员陌影
创建于2023-04-10
订阅专栏
Java并发编程从入门到精通
等 7 人订阅
共40篇文章
创建于2023-04-10
订阅专栏
默认顺序
默认顺序
最早发布
最新发布
Java并发编程之ForkJoinPool
前言 ForkJoinPool是一种线程池,它和其他线程池的不同之处在于,它主要体现的是分治思想,和之前提到的LongAdder的原理有点相似,就是把一个大任务拆分成很多小任务去处理,最后再对所有执行
Java并发编程之定时器
前言 在日常的开发中,免不了会遇到需要定时执行某些任务的情况,比如定时清理日志、定时发送通知等。我了解到的处理定时任务的解决方案主要有三种: Timer ScheduledExecutorServic
Java并发编程之Unsafe
简介 Unsafe是一个比较底层的类,位于sun.misc包下。取名是Unsafe并不意味着线程不安全,而是因为它可以直接操作内存和线程,如果使用不当会产生意想不到的后果,所以必须慎用,名字可以理解为
Java并发编程之LongAdder源码(三)
前言 前面两篇文章介绍了LongAdder的主要方法实现流程,除此之外还有两个需要注意的地方,分别是: sum()方法 @sun.misc.Contended注解 sum方法 上面就是sum()方法的
Java并发编程之LongAdder源码(二)
上篇文章 Java并发编程之LongAdder源码(一)中最后写到了有三种情况会执行longAccumulate方法,下面就根据这三种情况来进行分析 当Cell数组为null时,传入的三个参数为1,n
Java并发编程之LongAdder源码(一)
前言 上一篇文章 Java并发编程之原子类(二)中介绍了LongAdder常用的方法,今天我们根据源码来分析一下它的基本实现流程。 上面这段话是LongAdder源码注释中的一部分,翻译过来意思大概是
Java并发编程之原子类(二)
原子数组 原子数组有AtomicIntegerArray、AtomicLongArray、AtomicReferenceArray,主要是用来对数组中的某个元素进行原子操作。三个类的方法基本类似,这里
Java并发编程之原子类(一)
JUC中的原子类主要有以下几类: 原子整数 原子引用 原子数组 原子更新器 原子累加器 原子整数 原子整数主要有AtomicBoolean、AtomicInteger、AtomicLong,三个类中都
Java并发编程之CAS原理
原理简介 CAS全称是Compare-And-Swap,比较交换的意思。它的作用是比较内存中的某个值是否和预期的一致,是的话就更新成新的值,不是的话就一直循环。 考虑下面一种场景:变量a的初始值是10
Java并发编程之线程池方法
ThreadPoolExecutor ThreadPoolExecutor是Java提供的线程池的实现类 构造方法 通过 Java并发编程之如何设计线程池了解了线程池的基本设计原理,对构造方法中的参数
Java并发编程之如何设计线程池
本篇文章主要分析线程池的设计思路 什么是线程池 线程池是一种池化技术,通过创建多个线程存储到容器中,有任务时取出线程来处理,处理完之后继续等待执行其他任务,通过重复利用线程来减少线程的创建和上下文切换
Java并发编程之join源码分析
join方法源码 join方法的作用是让当前线程等待另一个线程执行完,主要应用于多个线程需要按照指定顺序执行的场景。 查看Thread类中join()方法发现实际调用的是重载方法join(long m
Java并发编程之wait、nofity
重量级锁的主要组成部分有Owner、EntryList、WaitSet三部分,调用wait方法的线程就会进入WaitSet中
Java并发编程之synchronized(二)
简介 提到synchronized大家应该都知道是用来加锁的,被锁的代码块中的代码同时只能被一个线程执行,保证了代码的安全性。 基本用法 代码块 实例方法 静态方法 锁状态转换 上一篇文章中提到对象头
Java并发编程之synchronized(一)
Java对象 Java中一个对象在内存中分为三部分:对象头、实例数据、对齐填充。 对象头 对象头主要分为Mark Word、类型指针(Class Pointer)、数组长度(Array Length)
Java并发编程之线程状态
Java中线程状态有六种, NEW、RUNNABLE、BLOCKED、WAITING、TIMED_WAITING、TERMINATED
Java并发编程之常用方法
常用方法 currentThread():静态方法,获取当前线程 start():开启线程 run():线程执行方法,创建线程时重写此方法 setName():设置线程名称,必须在调用start方法之
Java并发编程之查看进程和线程
在开发中经常需要查看端口、进程和线程的相关信息,下面从三个方面介绍一下常用的命令: Windows常用命令 Linux常用命令 Java中常用命令
Java并发编程之创建线程
Java中创建线程的方式主要有以下三种: 继承Thread类 实现Runnable接口 实现Callable接口 继承Thread类
Java并发编程之基础概念
并发编程在Java中有着及其重要的位置,随着项目规模的扩大,不可避免地要应对并发问题,而且在如此卷的市场中,并发编程已经是面试必问的内容了,所以学好并发编程至关重要。