E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
JUC源码系列
JUC
笔记
下面来具体讲解volatile的两条实现原则。1)Lock前缀指令会引起处理器缓存回写到内存2)一个处理器的缓存回写到内存会导致其他处理器的缓存无效。利用synchronized实现同步的基础:Java中的每一个对象都可以作为锁。具体表现为以下3种形式。·对于普通同步方法,锁是当前实例对象。·对于静态同步方法,锁是当前类的Class对象。·对于同步方法块,锁是Synchonized括号里配置的对象
牡丹福
·
2023-09-27 07:43
较真儿学
源码系列
-InheritableThreadLocal(逐行源码带你分析作者思路)
之前我写过对ThreadLocal源码进行分析的文章,感兴趣的话可以查看《较真儿学
源码系列
-ThreadLocal(逐行源码带你分析作者思路)》。
天瑕
·
2023-09-26 17:37
Java并发编程
Inheritable
ThreadLocal源码分析
较真儿学
源码系列
-HashSet(逐行源码带你分析作者思路)
HashSet的底层是通过HashMap来实现的,之前我写过对HashMap源码进行分析的文章,感兴趣的话可以查看《较真儿学
源码系列
-HashMap(逐行源码带你分析作者思路)》。
天瑕
·
2023-09-26 17:37
数据结构与算法
HashSet
HashSet源码分析
较真儿学
源码系列
-PowerJob启动流程源码分析
PowerJob版本:4.3.2-main。1简介PowerJob是全新一代的分布式任务调度与计算框架,官网地址:http://www.powerjob.tech/。其中介绍了PowerJob的功能特点,以及与其他调度框架的对比,这里就不再赘述了。以上是PowerJob的架构图,取自官网。可以看出,PowerJob是典型的客户端/服务端交互的架构(但是在PowerJob中却没有一般分布式中间件会有
天瑕
·
2023-09-26 17:06
任务调度
PowerJob
分布式任务调度框架
Akka
Vert.x
多线程进阶:Callable和
JUC
的常见类
Callable这是一个接口,类似于Runnable。Runnable用来描述一个任务,描述的任务没有返回值。Callable也是用来描述一个任务,描述的任务是有返回值的。如果需要使用一个线程单独的计算出某个结果来,此时用Callable是比较合适的。在new一个Callable之后,需要重写一个方法。就相当于是重写Runnable的Run方法,run方法的返回值是void,这里的call方法返回
Xua3055
·
2023-09-26 12:43
java
java-ee
JUC
面经整理
JUC
全名是java.util.concurrent,俗称java并发包,java并发是java后端面试的重点,基本上必问,因此对于
JUC
以及里面的内容还是要熟悉最好能自己试着写一下首先来看看
JUC
的结构
HaiyerLu
·
2023-09-26 07:56
给定两个字符串ABCDEF和123456,用两个线程按照1A2B3C4D5E6F的顺序输出
这个问题考察的是对多线程和
juc
下面某些类的理解,总的来说,思路就是当一个线程t1输出当前字符之后,要阻塞或者等待,让另外一个线程t2输出,然后t2阻塞或者等待,有以下几种思路,废话不多说,直接上代码1
qq_17805707
·
2023-09-26 07:57
多线程
java
开发语言
Java笔记:java-introduction
Java系列java进阶java泛型详解java实例化的五种方式nio基础ArrayList源码分析LinkedList源码分析HashSet和TreeSet源码分析HashMap源码分析(JDK1.8)
juc
zui初的梦想
·
2023-09-26 04:44
java
java
笔记
开发语言
countDownLatch、cyclicBarrier、semaphore使用详解
文章目录前言countDownLatchcyclicBarriersemaphore结尾前言在前面两篇中介绍了AQS的同步队列、条件队列的源码实现,这一篇则是来看一下
JUC
中主要的三个并发工具类:countDownLatch
XH雪浪风尘
·
2023-09-25 17:51
并发
java
juc
countDownLatch
CountDownLatch和CyclicBarrier区别和用法
CyclicBarrier概念CyclicBarrier概念从源码分析概念总结2.构造器3.代码验证二者在实际中的不同4.归纳总结5.网上的一些误区CountDownLatch和CyclicBarrier都是
juc
BooleanZhang
·
2023-09-25 17:18
多线程
高并发
juc
多线程
并发编程
面试部分难点梳理 - IO多路复用
IO多路复用如果用
JUC
的方式来类比理解一下,BIO是相当于整个APP都加了synchronied,NIO相当于是使用自旋的方式。
paleatta
·
2023-09-25 12:11
NIO
JUC
并发编程学习
JUC
并发编程学习目录
JUC
并发编程学习1.什么是
JUC
1.1
JUC
简介1.2进程与线程1.3线程的状态1.3.1线程状态Thread.State(枚举类)1.3.2wait/sleep区别1.4并发与并行
xujinshan361
·
2023-09-25 08:48
学习记录
Java
并发编程基础
JUC
线程间通信
异步回调
JUC
并发编程
文章目录
JUC
1、什么是
JUC
2、线程和进程3、Lock锁3.1、传统Synchronized3.2、Lock接口3.3、Synchronized和Lock区别4、生产者和消费者问题生产者和消费者问题Synchronized
渣渣苏
·
2023-09-25 08:18
学习笔记
java
多线程
并发编程
juc
juc
并发编程学习笔记下(尚硅谷)
5多线程锁5.1锁的八个问题演示classPhone{publicstaticsynchronizedvoidsendSMS()throwsException{//停留4秒TimeUnit.SECONDS.sleep(4);System.out.println("------sendSMS");}publicsynchronizedvoidsendEmail()throwsException{Sy
周虽旧邦其命维新
·
2023-09-25 08:17
学习笔记
java
juc
尚硅谷
JUC
并发编程与源码分析
目录一、基础概念2.CompletableFuture3.实战案例一、基础概念1.线程基础知识复习1)、1把锁:synchronized2)、2个并:并发(concurrent):是指在同一实体上的多个事件,在一台处理器上“同时处理多个任务”,同一时刻其实只有一个事件发生【一对多】并行(parallel):是在不同实体上的多个事件,多台处理器上同时处理多个任务,同一时刻各自互不干涉【多对多】3)、
菜鸟a小李
·
2023-09-25 08:17
Java
jvm
java
开发语言
JUC
并发工具使用与详情(CountDownLatch、CyclicBarrier、Semaphore、Exchanger)
JUC
并发工具一、CountDownLatch应用&源码分析1.1CountDownLatch介绍CountDownLatch就是
JUC
包下的一个工具,整个工具最核心的功能就是计数器如果有三个业务需要并行处理
Armin_1024
·
2023-09-25 08:16
多线程
java
java
马士兵-郑金维—并发编程—6.
JUC
并发工具
JUC
并发工具一、CountDownLatch应用&源码分析1.1CountDownLatch介绍CountDownLatch就是
JUC
包下的一个工具,整个工具最核心的功能就是计数器。
Jerry_carry
·
2023-09-25 07:46
并发编程
多线程与高并发
juc
JUC
高并发编程
1.
JUC
概述1.1什么是
juc
在Java中,线程部分是一个重点,本篇文章说的
JUC
也是关于线程的。
JUC
就是java.util.concurrent工具包的简称。
丹辰子DCZ
·
2023-09-25 07:14
多线程
JUC
高并发
高并发编程
多线程
JUC
框架 CompletableFuture源码解析 JDK8
文章目录前言基础设施创建CompletableFutureCompletableFuture成员Completion内部类AltResult内部类Signaller内部类从supplyAsync+thenApply(thenApplyAsync)理解supplyAsyncthenApply(thenApplyAsync)UniApply内部类#tryFireCompletableFuture#un
anlian523
·
2023-09-25 07:43
Java
Future
异步回调
java
JUC
多线程
一篇完整学习
JUC
并发编程(包含实例源码)
文章目录
JUC
并发编程1、什么是
JUC
?2、线程和进程并发、并行线程有几个状态?6个wait/sleep区别?
宋丹敏
·
2023-09-25 07:42
学习
java
开发语言
后端
spring
JUC
下的异步编程工具使用详情以及源码分析(FutureTask、CompletableFuture)
异步编程一、FutureTask应用&源码分析1.1FutureTask介绍FutureTask是一个可以取消异步任务的类。FutureTask对Future做的一个基本实现。可以调用方法区开始和取消一个任务一般是配合Callable去使用异步任务启动之后,可以获取一个绑定当前异步任务的FutureTask可以基于FutureTask的方法去取消任务,查看任务是否结果,以及获取任务的返回结果Fut
Armin_1024
·
2023-09-25 07:41
java
多线程
java
JUC
并发编程——学习笔记
正文笔记:函数式接口:Thread重写直接lambda操作低耦合:虚假唤醒解决办法:if判断改为while循环(官方文档)锁的研究:不安全集合:callable:减法计数器加法计数器:匿名内部类访问局部变量时需要加final修饰(在jdk8之前)https://blog.csdn.net/tianjindong0804/article/details/81710268?ops_request_mi
Cabbage coder
·
2023-09-25 04:42
java多线程
juc
java
Java并发编程——初识
JUC
文章目录初识
JUC
一、什么是
JUC
二、进程和线程2.1进程和线程2.2并行和并发2.3Java线程有几个状态2.4wait/sleep的区别初识
JUC
一、什么是
JUC
JUC
是java.util.concurrent
YaDe.
·
2023-09-25 04:42
Java
JUC
java
juc
JUC
并发编程——线程的基本方法使用
目录一、线程名称设置和获取二、线程的sleep()三、线程的interrupt四、join()五、yield()六、wait(),notify(),notifyAll()一、线程名称设置和获取1、线程名称一般在线程启动前设置,但也允许为正在运行的线程设置名称。在实际开发中,在使用多线程开发时,一定要自定义线程名称,偏于查找日志。2、线程允许使用同样的名字,但应该尽量避免。3、如果线程没有命名,系统
熟透的蜗牛
·
2023-09-25 04:41
JUC
JUC
多线程
并发编程
JUC
并发编程——CAS
一、什么是CAS由于JVM的synchronized重量级锁涉及操作系统内核态下互斥锁的使用,因此其线程阻塞和唤醒都涉及进程在用户态和内核态频繁的切换,导致重量级锁开销大,性能低。CAS,CompareAndSwap比较并替换。CAS操作包含三个操作数——内存位置(V)、预期原值(E)新值(N)。如果内存位置的值与预期原值相匹配,那么处理器会自动将该位置值更新为新值。否则,处理器不做任何操作。无论
熟透的蜗牛
·
2023-09-25 04:41
JUC
JUC
并发编程
CAS
JUC
并发编程——JAVA内存模型
目录一、CPU缓存结构二、并发编程的三大问题原子性可见性有序性三、JMM内存模型四、JMM如何解决有序性问题一、CPU缓存结构由于CPU的运算速度比主存(物理内存)的存取速度快很多,为了提高处理速度,现代CPU不直接和内存进行通信,而是在CPU和主存之间设计了高速缓存(Cache),越靠近CPU层的高速缓存速度越快,容量越小。如下图每一级高速缓存中所存储的数据都是下一级高速缓存中的一部分,L1最靠
熟透的蜗牛
·
2023-09-25 04:41
JUC
JUC
并发编程
JMM
多线程
JUC
并发编程——多线程入门
目录一、为什么要有多线程二、名词解释1、进程和线程2、并发和并行3、总结三、创建线程1、继承Thread类2、实现Runnable接口3、实现Callable接口4、线程池创建线程四、线程状态五、守护线程和线程优先级一、为什么要有多线程随着计算机的发展,单核的CPU发展到多核的CPU,CPU的性能越来越高,为了充分发挥CPU的计算性能和提高CPU硬件资源的利用率于是在进程的基础上演变出了多线程。使
熟透的蜗牛
·
2023-09-25 04:11
JUC
JUC
并发编程
多线程
java并发编程——
JUC
并发包简介
JUC
并发包简介
JUC
并发包简介
JUC
包的主体结构各个模块的详解锁机制类Locks并发集合类Collections线程池相关类Executer信号量三组工具类Tools原子类操作类Atomic
JUC
并发包简介
mkfka
·
2023-09-25 04:10
java并发编程
并发编程——
JUC
并发工具
CountDownLatch核心源码SemaphoreSemaphore应用Semaphore核心源码CyclicBarrierCyclicBarrier应用CyclicBarrier核心源码总结前言
JUC
叫我二蛋
·
2023-09-25 04:39
Java
java
开发语言
「
Juc
并发编程」什么是可重入锁?
「
Juc
并发编程」什么是可重入锁?文章目录「
Juc
并发编程」什么是可重入锁?
FrozenPenguin
·
2023-09-24 14:26
JUC并发编程
学习笔记
Java
java
jvm
面试
JUC
P8 ThreadLocal 基础+代码
JUC
P8ThreadLocal基础+代码教程:https://www.bilibili.com/video/BV1ar4y1x727?
哇咔咔负负得正
·
2023-09-24 13:34
JUC
java
开发语言
多线程
JUC
系列03-同步容器类
1同步容器类同步容器类主要是指java.util.concurrent下的集合类,这些类的设计主要是用于提高多线程下的并发性能和解决并发读写问题。主要有以下这些类ConcurrentHashMapConcurrentSkipListMapConcurrentSkipListSetCopyOnWriteArrayListCopyOnWriteArraySet以下是并发包下ConcurrentHash
码蜂窝
·
2023-09-24 11:54
JUC
并发编程——线程池
目录一、线程池优点二、线程池原理创建线程池的方式ThreadPoolExecutor参数说明队列说明线程池的执行流程线程池拒绝策略三、四种线程池解析Executors.newSingleThreadExecutor();Executors.newFixedThreadPoolExecutors.newCachedThreadPool()Executors.newScheduledThreadPoo
熟透的蜗牛
·
2023-09-24 10:04
JUC
线程池
并发编程
多线程
JUC
学习:java中的各种锁详细介绍
转自:https://www.cnblogs.com/jyroy/p/11365935.html,我在网上看到了一篇很好的blog来介绍锁的相关内容,在这记录下来以供后面自己学习Java提供了种类丰富的锁,每种锁因其特性的不同,在适当的场景下能够展现出非常高的效率。本文旨在对锁相关源码(本文中的源码来自JDK8)、使用场景进行举例,为读者介绍主流锁的知识点,以及不同的锁的适用场景。Java中往往是
唥雨凊
·
2023-09-24 09:00
#
JUC
java
锁
(五)深入剖析并发之AQS独占锁&重入锁ReetrantLock及Condition实现原理
引言在我们前面的文章《深入理解Java并发编程之无锁CAS机制》中我们曾提到的CAS机制如果说是整个Java并发编程基础的话,那么本章跟大家所讲述的AQS则是整个Java
JUC
的核心。
竹子爱熊猫
·
2023-09-24 09:30
并发编程
java
多线程
并发编程
进阶学习之旅-多线程之
JUC
工具类原理及Condition使用及源码分析
文章目录学习内容condition的使用demo案例condition同步过程AQS队列和conditon队列状态变化流程AQS队列的作用源码分析学习内容condition的使用源码分析condition的使用我们通过syncsynchronize、wait、notify、notifAll可以完成线程间通信,完成生产者消费者功能同样也可以通过Lock、condition(await、signal、
树叶要走风怎么挽留
·
2023-09-24 09:30
多线程
java
多线程
深入学习
JUC
,深入了解Java线程的常见方法与底层原理,带你了解从未深入的底层!!!
文章目录线程运行原理栈内存线程的上下文切换常见方法start()run()join()/join(n)setPrioritty(int)/getPrioeity()getState()interrupted()/isInterrupted()currentThread()sleep(longn)yield()方法详解不推荐使用的方法sleep和yield的区别线程的优先级interrupt与par
木 木 水.
·
2023-09-24 09:59
JUC的深入学习
学习
java
开发语言
JUC
锁 Locks中的ReentrantLock,可重入锁原理,通过源码进行学习深入了解
概述ReentrantLock实现了一个可重入、可中断、可选择公平或非公平竞争的独占模式的锁。该类实现了lock接口,内部使用了一个同步器sync来维护同步状态、阻塞/唤醒线程、管理等待队列等。而这个同步器就是基于AbstractQueuedSynchronizer来实现的。内部类ReentrantLock总共有三个内部类,并且三个内部类是紧密相关的,下面先看三个类的关系。这三个类中,最底层都是基
泠鸳
·
2023-09-24 09:58
JUC
多线程
java
并发编程
jdk
JUC
锁 Locks中的ReentrantReadWriteLock,读写锁原理,通过源码进行学习深入了解
概述ReentrantReadWriteLock是ReadWriteLock接口的具体实现。和ReentrantLock一样,它使用Sync(继承自AQS抽象类)作为锁的同步器,支持公平同步器和非公平同步器,分别在FairSync和NonfairSync中实现。在AQS同步器的基础上,此Lock实现了两种类型的锁,并把它们作为内部属性。这两种锁分别是读锁(共享锁)ReadLock和写锁(独占锁,排
泠鸳
·
2023-09-24 09:58
JUC
java
多线程
jdk
面试
深入学习掌握
JUC
并发编程系列(五) -- 深入浅出无锁-乐观锁
深入学习掌握
JUC
并发编程系列(五)--深入浅出无锁-乐观锁一、CAS(原子性)与volatile(可见性)二、原子整数三、原子引用(Reference)四、原子数组(Array)五、字段更新器(Filed
snapepotter
·
2023-09-24 09:58
深入学习掌握JUC并发编程系列
学习
java
深入学习
JUC
,深入了解Java线程中的锁,及锁的实现原理,底层的知识又增加了!!!
文章目录如何停止一个线程i++的线程安全问题共享变量线程安全的解决问题synchronized基础概念java对象头Monitor优化轻量级锁锁膨胀自旋优化偏向锁偏量级锁的撤销偏量级锁的批量重定向偏量级锁的批量撤销锁消除如何停止一个线程stop方法,非常不安全,不应该使用此方法会立即释放此线程拥有的所有的锁,并且停止run方法中所有正在工作的线程,可能导致操作一些数据还没有完全同步就关闭了停止了,
木 木 水.
·
2023-09-24 09:56
JUC的深入学习
java
学习
开发语言
Java处理并发编程工具集合(
JUC
)详解
目录1线程池2Fork/Join2.1概念2.2组成2.3基本使用2.4设计思想2.5注意点3原子操作3.1概念3.2CAS3.3atomic3.4注意!4AQS4.1前言4.2AQS概述4.3基本使用4.4原理解析5并发容器1线程池相关文章防止冗余:Java由浅入深理解线程池设计和原理:https://blog.csdn.net/ZGL_cyy/article/details/133208026
赵广陆
·
2023-09-24 08:50
java
java
python
数据库
Lock介绍
Lock介绍Lock是
juc
(java.util.concurrent)包下面的一个接口类,是作者DougLea定义的api规范,主要接口有api说明voidlock()获取锁。
·
2023-09-24 02:08
javajucaqscas
jsliang 求职系列 - 15 - 手写
源码系列
汇总
一目录不折腾的前端,和咸鱼有什么区别目录一目录二jsliang整理三参考文献 3.1手写系列文章 3.2手写call/bind/apply 3.3手写深拷贝和浅拷贝 3.4手写Promise二jsliang整理本系列有8篇文章,19个手写方法,大纲32个知识点。手写系列存放位置:手写系列jsliang温馨提示:公众号可能无法直接跳转对应地址,请点击阅读原文各个手写具体实现:Promise简写版Pr
JavaScriptLiang
·
2023-09-23 22:14
面试
css
html
编程语言
字节跳动
JUC
第六讲:关键字volatile详解
JUC
第六讲:关键字volatile详解相比Sychronized(重量级锁,对系统性能影响较大),volatile提供了另一种解决可见性和有序性问题的方案,本文是
JUC
第六讲,volatile关键字详解
程序员 jet_qi
·
2023-09-23 09:42
java基础之多线程
java
volatile
可见性
原子性
Synchronized
happens-before
JUC
第七讲:关键字final详解
JUC
第七讲:关键字final详解final关键字看上去简单,但是真正深入理解的人可以说少之又少。本文是
JUC
第七讲:关键字final详解,将常规的用法简化,提出一些用法和深入的思考。
程序员 jet_qi
·
2023-09-23 09:39
java基础之多线程
java
final关键字
重排序规则
blank
final
static
final
实现原理
React
源码系列
之React启动过程分析
React
源码系列
之React启动过程分析经历一个月的学习整理,站在前人的肩膀上,对React有了一些浅薄的理解,希望记录自己的学习过程的同时也可以给大家带来一点小帮助。
web老猴子
·
2023-09-23 07:50
react.js
javascript
前端
Java多线程相关概念
笔记地址:
JUC
并发编程·语雀博客地址:
Juc
_并发编程目录_https://tangzhi.blog.csdn.net/article/details/1092_所得皆惊喜的博客-CSDN博客packagecom.nanjing.gulimall.zhouyimo.test
ZHOU_VIP
·
2023-09-22 12:05
JUC并发编程与源码分析
java
python
开发语言
刘轩《教你巧用心理学过有效率的人生》课程百度云分享
来源于十点课堂免费分享复制这段内容后打开百度网盘手机App,操作更方便哦链接:https://pan.baidu.com/s/1S93
JUC
qGEp4R5U9eOkBa1Q提取码:ela1
醋加柠檬
·
2023-09-22 11:43
死磕 Hutool
源码系列
(零)——为什么要阅读 Hutool 源码?
image前言你懂的越多,就会发现不懂的越多本文是死磕Hutool
源码系列
开篇,主要叙述一下为什么要阅读Hutool源码,以及阅读Hutool源码都有哪些好处。不知道什么是Hutool?
张少林同学
·
2023-09-22 03:11
上一页
16
17
18
19
20
21
22
23
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他