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
Java并发编程之道
【
Java并发
编程的艺术学习】第五章摘要补全
1.finally作用:担心一些资源可能无法正常释放,使用finally释放资源2.ReentrainLock释放死锁,使用这个接口,这样就不会产生死锁Locklock=newReentrainLock();lock.lock();try{}finally{lock.unlock();}3.重入锁支持重新进入的锁,表示该锁能够支持一个线程对资源的重复加锁。除此之外,该锁还支持获取锁时的公平和非公平
一日三餐384
·
2024-01-23 23:35
java
学习
开发语言
ClickHouse入门:案例初识ClickHouse
吾欲以此笔记,传授
编程之道
,助汝解技术难题。吾之文章,不以繁复之言,惑汝耳目;但以浅显之语,引汝入胜。若此文对阁下有所裨益,敬请-点赞⭐-收藏-关注,不胜感激。
诸葛妙计
·
2024-01-23 15:37
技术探秘
clickhouse
数据库
数据结构
oracle
sql
database
hive
图文解析volatile和synchronized区别
之前写了几篇
Java并发
编程的系列文章,有个朋友微群里问我,还是不能理解volatile和synchronized二者的区别,他的问题主要可以归纳为这几个:volatile与synchronized在处理哪些问题是相对等价的
Bfmall
·
2024-01-23 10:08
Java并发
- wait set & entry set
基本介绍在Java多线程编程中,waitset(等待集)和entryset(入口集)是两种不同的线程队列,它们用于管理线程同步和通信。它们的主要区别在于它们的用途和工作方式。WaitSet(等待集):当一个线程调用了对象的wait()方法时,它进入该对象的等待集。这通常发生在一个线程需要等待某个特定条件变为真时。例如,当它等待某个资源变得可用或等待某个条件满足时。线程在等待集中等待,直到它被另一个
青衫客36
·
2024-01-23 10:38
Java基础
java
开发语言
Java并发
- ABA问题
ABA问题是在并发编程中出现的一种问题,特别是在使用非阻塞算法时。它主要发生在某些数据结构(如栈、队列、链表等)的原子操作中。ABA问题的名称来自于数据结构中元素的状态变化序列:元素最初处于状态A,然后被改变为状态B,最后又被改回原先的状态A。ABA问题的具体描述假设有两个线程,线程1和线程2,都要对共享数据结构(例如,一个栈或原子变量)进行操作。ABA问题的发生通常如下:线程1读取:线程1读取数
青衫客36
·
2024-01-23 10:02
Java基础
java
开发语言
Java并发
编程-Future系列之Future的介绍和基本用法
多线程(Multithreading)是Java的一个特性,它可以允许一个程序的多个部分(也就是线程)并发地执行,以达到最大程度利用CPU的目的。关于多线程编程(MultithreadProgramming),下面介绍一下Future的特性和基本用法。dogs_multithread_programmingAboutFutureFuture(java.util.concurrentInterfac
西召
·
2024-01-23 06:53
Redis相关面试题大全
本文收录于java面试题系列,大家有兴趣的可以看一看相关专栏Rust初阶教程、go语言基础系列、spring教程等,大家有兴趣的可以看一看
Java并发
编程系列,设计模式系列、goweb开发框架系列正在发展中
过去日记
·
2024-01-23 01:28
java面试题
redis
spring
数据库
Java并发
之原子类型源码篇
❤️文章目录
Java并发
之原子类型源码篇一、Java原子类型1.1AtomicInteger①常用方法②使用③实现原理1.2AtomicIntegerArray①常用方法②使用
欧克小奥
·
2024-01-22 23:45
Java并发源码
java
并发
原子类
Java并发
编程总结02_线程间通讯
1、使用volatile和synchronized关键字Java支持多个线程同时访问一个对象或者对象的成员变量,由于每个线程可以拥有这个变量的拷贝(虽然对象以及成员变量分配的内存是在共享内存中的,但是每个执行的线程还是拥有一份拷贝,这样做的目的是加速程序的执行,这也是现代多核处理器的一个显著特性),所以程序在执行过程中,一个线程看到的变量并不一定是最新的。volatilevolatile修饰字段(
qizhi_wang
·
2024-01-22 14:22
教你用认知和人性来做最棒的程序员
源码精品专栏精尽Dubbo原理与源码69篇精尽Netty原理与源码61篇中文详细注释的开源项目
Java并发
源码合集RocketMQ源码合集Sharding-JDBC源码解析合集SpringMVC和Security
芋道源码
·
2024-01-22 12:41
1-《
Java并发
编程实战》(Java Concurrency in Practice) 代码示例
背景最近在学习
Java并发
编程方面的知识,我的学习的路线是:先学习了JVM,然后再学的JUC。
太自由
·
2024-01-22 09:20
java
Java并发编程
JUC
线程安全性
Java并发编程实战
多线程
2-《
Java并发
编程实战》(Java Concurrency in Practice) 代码示例
说明这是针对《
Java并发
编程实战》(JavaConcurrencyinPractice)一书中的示例代码进行扩展,并且进行验证的完整代码,具体背景可看这篇文章:1-《
Java并发
编程实战》(JavaConcurrencyinPractice
太自由
·
2024-01-22 09:20
java
并发编程
JUC
多线程
[AIGC] 深入理解
Java并发
编程:从入门到进阶
深入理解
Java并发
编程:从入门到进阶引言在计算机领域中,针对多核处理器的高并发需求,
Java并发
编程成为了一项重要的技能。
程序员三木
·
2024-01-22 01:57
AI
java
AIGC
开发语言
一篇文章熟悉 Java 高性能队列——Disruptor
前言本文隶属于专栏《100个问题搞定
Java并发
》,该专栏为笔者原创,引用请注明来源,不足和错误之处请在评论区帮忙指出,谢谢!
Shockang
·
2024-01-22 00:09
Java并发
java
并发
disruptor
java并发
面试常识之LinkedBlockingQueue
谈到ArrayBlockingQueue的特色就是循环队列,然后一把锁,2个条件,完成了功能。本来以为LinkedBlockingQueue也是这样的,结果和预期不一样,LinkedBlockingQueue利用了链表的特点,使用了两把锁,两个条件来控制。是一个锁分离的应用,下面就说说,他的实现,以及为什么ArrayBlockingQueue就不适合锁分离。主要成员变量privatefinalRe
xpbob
·
2024-01-21 10:39
java并发
编程面试题
java并发
编程面试题何为进程?何为线程?JVM拓展为什么程序计数器、虚拟机栈和本地方法栈是线程私有的呢?为什么堆和方法区是线程共享的呢虚拟机栈和本地方法栈为什么是私有的?
yujkss
·
2024-01-21 09:42
java
开发语言
【一文详解】Java多线程和并发知识点详细总结【万字总结】
Java并发
编程并发编程的三个特性原子性一次操作或者多次操作,要么所有的操作全部都得到执行并且不会受到任何因素的干扰而中断,要么都不执行。
Carson's blog
·
2024-01-21 06:29
javaSE
java
多线程
并发
java-ee
经验分享
知识总结
分布式定时任务系列8:XXL-job源码分析之远程调用
任务执行引擎设计续分布式定时任务系列5:XXL-job中blockingQueue的应用分布式定时任务系列6:XXL-job触发日志过大引发的CPU告警分布式定时任务系列7:XXL-job源码分析之任务触发
Java
kobe_t
·
2024-01-20 20:36
#
分布式调度
xxl-job
Java并发
编程: 常用的分布式锁总结
一、基于MySQL的分布式锁主要利用到了MySQL中select+forupdate操作来达到互斥的效果。publicstaticTlockWithMutex(StringlockName,DataSourcedataSource,Callablerunnable)throwsException{Connectionconnection=null;booleanautoCommit=false;P
玉成226
·
2024-01-20 11:16
【Java并发编程】
java
分布式
JAVA 并发容器和阻塞队列
JAVA并发
容器和阻塞队列
JAVA并发
容器ConcurrentHashMapjdk7vsjdk8异同和优缺点数据结构JDK7采用segment分段锁的思想,jdk8中是使用数组+链表+红黑树实现。
三石_5f43
·
2024-01-20 10:42
深入解析Java中synchronized:从原理到锁升级及历史演进
在
Java并发
编程中,synchronized关键字是一种非常重要的同步机制,用于控制多个线程对共享资源的访问。
地瓜伯伯
·
2024-01-20 07:10
源码
java
jvm
spring
cloud
微服务
面试
算法
spring
C++之美:优雅的
编程之道
C++,作为一门强大而灵活的编程语言,深受开发者的喜爱。然而,要想真正优雅地驾驭C++,除了掌握语法和功能外,还需要一些优秀的编码实践和设计原则。在这篇博客中,我将探讨如何以一种优雅的方式食用C++。1.代码清晰度优于一切优雅的C++代码首先要保证清晰易懂。给变量、函数和类取名时要有意义,注释要简洁明了,代码块要有良好的缩进。清晰的代码不仅方便自己阅读,也让团队合作更加高效。//优雅的变量命名in
Dreamer0806.
·
2024-01-20 02:12
c++
ReentrantReadWriteLock:深入解析与最佳实践
Java并发
包提供了ReentrantReadWrit
小阳小朋友
·
2024-01-19 19:29
lock
java
数据库
锁
蚂蚁Java互联网架构师第1期高端
教程目录├─0001-多线程快速入门.zip├─0002-多线程之间实现同步.zip├─0003--多线程之间通讯.zip├─0004--
Java并发
编程.zip├─0005--数据交换格式与SpringIOC
飞雪雪团队
·
2024-01-19 13:05
Java并发
编程: 并发编程中的ExecutionException异常
一、什么是ExecutionException在并发编程中在执行java.util.concurrent.Future实现类的get方法时,需要捕获java.util.concurrent.ExecutionException这个异常。Future.get()方法通常是要获取任务的执行结果,当执行任务的过程中抛出了异常,就会产生ExecutionException异常。二、如何处理Executio
玉成226
·
2024-01-19 12:02
【Java并发编程】
java
网络
Java并发
编程: ExecutorCompletionService详解
一、什么场景下使用ExecutorCompletionService当在项目中我们向使用线程池处理任务时,在任务处理完成后想要的到返回值进而进行其他的逻辑处理,这个时候就可以使用ExecutorCompletionService类,任务执行完成后即可根据返回值进行其他的逻辑处理。使用提供的Executor执行任务的CompletionService。该类安排提交的任务在完成后放置在使用take可访
玉成226
·
2024-01-19 12:59
【Java并发编程】
java
三天吃透
Java并发
面试八股文
内容摘自我的学习网站:topjavaer.cn分享50道
Java并发
高频面试题。线程池线程池:一个管理线程的池子。为什么平时都是使用线程池创建线程,直接new一个线程不好吗?
大彬聊编程
·
2024-01-19 04:29
java
面试
开发语言
Java并发
编程之Condition
1.前言任意一个Java对象,都有一组监视器方法(定义在java.lang.Object上),主要包括wait()、wait(longtimeout)、notify()以及notifyAll()方法,这些方法与synchronized同步关键字配合,可以实现等待/通知模式。Condition接口也提供了类似Object的监视器方法,与Lock配合可以实现等待/通知模式,但是这两者在使用方式以及功能
干天慈雨
·
2024-01-18 15:29
理解并使用ThreadLocal实现线程级别的数据隔离
目录前言正文ThreadLocal的基本用法实现原理使用场景泛型工具类示例注意事项总结前言在
Java并发
编程中,ThreadLocal是一个非常实用且重要的工具类,它提供了一种线程本地存储机制。
李少兄
·
2024-01-18 07:18
Java
java
jvm
开发语言
Java并发
工具类
Lock和ConditionJavaSDK并发包通过Lock和Condition两个接口来实现管程,其中Lock用于解决互斥问题,Condition用于解决同步问题。如何设计一个互斥锁:能够响应中断、支持超时、非阻塞地获取。调用方是否需要等待结果,如果需要等待结果,就是同步;如果不需要等待结果,就是异步。ReadWriteLock实现一个缓存针对读多写少的场景,JavaSDK提供了读写锁--Rea
一生逍遥一生
·
2024-01-18 06:20
Java并发
与多线程:入门基础
目录1.介绍1.1多线程的概念1.2并发与并行的区别1.3为什么需要多线程2.多线程基础2.1线程的生命周期2.2线程的创建与启动2.3线程的中断与等待2.4线程的同步与互斥3.线程安全性3.1什么是线程安全性3.2共享数据与不可变性3.3同步机制与锁3.4原子性操作4.并发集合类4.1ConcurrentHashMap4.2CopyOnWriteArrayList4.3BlockingQueue
星光闪闪k
·
2024-01-17 22:49
Java
数据库
服务器
java
后端
架构
Java并发
新利器:CountDownLatch解密,提高线程协同效率!
文章目录1.引言1.1.技术背景1.2.解决的问题2.CountDownLatch概述2.1.基本概念2.2.核心方法3.使用场景3.1.同时启动多个任务3.2.等待多个线程完成任务4.技术点讲解4.1.初始化CountDownLatch4.2.CountDownLatch的线程安全性4.3.其他与CountDownLatch相关的工具类5.实例演示5.1.基本用法示例5.2.复杂场景应用6.性能
David爱编程
·
2024-01-17 07:21
java
Java并发编程
java
开发语言
java并发
之线程池api介绍
ScheduledThreadPoolExecutorScheduledThreadPoolExecutor类是ScheduleExecutorService接口的实现类。这个接口是用来开启延时任务的线程池。他会将这些任务都放入一个队列,先进先出。scheduleAtFixedRate:只有前一个任务执行完毕之后,后面的任务才能接着去执行;如果前一个任务执行的时间超过了周期时间,等前一个任务执行完
甜的柠檬酸
·
2024-01-17 05:39
java
Java并发
编程 (一)—— 内存模型(JMM)
文章目录1、什么是JMM?2、计算机内存架构3、缓存一致性问题4、指令重排序5、JMM内存模型5.1、JMM主内存和工作内存关系5.2、8个原子操作和8个执行规则5.2.1、8个原子操作5.2.2、8个执行规则5.3、JMM模型的线程间通信6、JMM解决的问题6.1、可见性6.1.1、定义6.1.2、可见性问题6.1.3、如何解决可见性问题6.2、原子性6.2.1、定义6.2.2、原子性问题6.2
有你的星空
·
2024-01-17 04:48
JMM
java线程
java
金三银四-解锁
Java并发
编程的艺术:掌握多线程、同步和并发控制的精髓
又要快到一年一度的金三银四,开始复习啦~!每天一点点。。目录一、Java中的volatile关键字有什么作用?二、解释Java中的synchronized关键字及其工作原理。三、Java中的CAS操作是什么?它如何实现无锁编程?四、讲述Java中的Lock接口及其与synchronized的区别五、什么是线程池?在Java中如何使用线程池?六、Java内存模型中的happens-before原则是
小贤java
·
2024-01-17 04:43
Java面试
Java
SE
java
开发语言
Java面试
金三银四
Java并发编程
学习笔记
浅析项目实践接触到的
java并发
线程池应用场景
文章目录前言场景一、营销场景-门店活动信息定时校验场景二、算法工程依赖-批量查询数据集总结前言最近研读《
java并发
编程之美》这本书8、9、11章关于线程池的部分,有很多新的收获,在此想结合项目经历,总结分析一下实践中对于线程池的应用场景
无一郎的技术圈
·
2024-01-17 02:36
java
后端
《
java并发
编程之美》学习笔记-知识盲点记录
文章目录@[TOC](文章目录)前言一、InheritableThreadLocal类(第一章1.11节)二、原子操作Adder与Accumulator(第四章)1.LongAdder2.LongAccumulator三、StampedLock锁(第六章)四、守护线程、伪共享、虚假唤醒(第一、二章)1.守护线程2.伪共享3.虚假唤醒4.Unsafe类与LockSupport五、Concurrent
无一郎的技术圈
·
2024-01-17 02:06
java
后端
Java并发
编程核心包——JUC
JUC初步作者:李晶晶;日期:2021年4月20日;学习视频:2020权威_juc与jvm并发编程Java必学_阳哥-尚硅谷文章目录JUC初步初识Lock抢票案例生产者消费者问题使用Lock解决生产者消费者问题Condition的精准唤醒轮流打印案例线程安全的集合类线程安全的List线程安全的Set线程安全的MapCallable接口Callable与FutureTaskJUC中的一些工具Coun
木子六日
·
2024-01-17 00:57
java
juc
可重入锁
lock
线程池
ThreadPool
这可能是最全面的
Java并发
编程八股文了
内容摘自我的学习网站:topjavaer.cn分享50道
Java并发
高频面试题。线程池线程池:一个管理线程的池子。为什么平时都是使用线程池创建线程,直接new一个线程不好吗?
大彬聊编程
·
2024-01-16 23:14
分享
java
开发语言
面试
一天吃透
Java并发
面试八股文
内容摘自我的学习网站:topjavaer.cn分享50道
Java并发
高频面试题。线程池线程池:一个管理线程的池子。为什么平时都是使用线程池创建线程,直接new一个线程不好吗?
大彬聊编程
·
2024-01-16 23:13
面试
Java
java
面试
开发语言
Java并发
编程的艺术-Java内存模型
基础共享变量(堆空间中所有的实例域,静态域,数组元素)的访问需要同步,而局部变量不会在线程间共享,所以不存在可见性问题。每一个线程都有一个私有的本地内存(抽象概念)源代码到最终的指令序列执行需经过编译器重排序和处理器重排序JMM要求java编译器在生成指令序列时,插入特定的内存屏障以禁止特定类型的处理器重排序。重排序重排序时遵守数据依赖性(写后读,读后写,写后写)as-if-serial语义:不管
油多坏不了菜
·
2024-01-16 21:56
Java并发
之魂——synchronized深度解析
虽然网上关于
Java并发
、多线程的文章已是不胜枚举,但是读起来总感觉晦涩且千篇一律,不是你转载我,就是我复制你。
AlbenXie
·
2024-01-16 19:51
高并发和负载均衡及各种优化
Java内置锁:深度解析lock和trylock
定义在Java11中,Lock接口是
Java并发
编程中一个重要的接口,它提供了更灵活的线程同步机制,相比于内置的synchronized关键
程序员古德
·
2024-01-16 19:50
java
python
开发语言
一天吃透
Java并发
面试八股文
内容摘自我的学习网站:topjavaer.cn分享50道
Java并发
高频面试题。线程池线程池:一个管理线程的池子。为什么平时都是使用线程池创建线程,直接new一个线程不好吗?
xiaoyuziliao
·
2024-01-16 11:49
java
分享
java
面试
开发语言
Java进阶 —— 多线程并发
前言在系统学完Java的面向对象编程之后,我们需要认真地来学习
Java并发
编程,我们在学习计算机操作系统的时候也都了解过进程、线程和协程的概念。
荔枝当大佬
·
2024-01-16 03:30
Java开发
java
多线程
并发
线程池
java并发
编程——多线程
本章主要介绍java中多线程并发编程基础知识,包括的内容有:进程,线程,协程的区别多线程的实现方式线程中断和优先级线程状态的切换一、进程、线程和协程1.1进程、线程和协程进程是资源分配的最小单位,操作系统会以进程为单位,分配系统资源(CPU时间片、内存等资源)。进程拥有自己独立的堆和栈,既不共享堆,也不共享栈。线程是CPU调度的最小单位,线程有自己的堆栈和局部变量,但线程之间没有单独的地址空间,共
西木风落
·
2024-01-16 03:57
Java基础知识巩固
java
多线程
高并发
JAVA并发
编程——多线程
目录线程的特点轻型实体独立调度和分配的基本单位可并发执行共享进程资源线程的实现使用内核线程实现使用用户线程实现使用用户线程加轻量级线程混合实现Java线程实现每日寄语线程的特点在多线程操作系统中,通常是在一个进程中包括多个线程,每个线程都是作为利用CPU的基本单位,是花费最小开销的实体。线程具有以下属性。轻型实体线程中的实体基本上不拥有系统资源,只是有一点必不可少的、能保证独立运行的资源。线程的实
别活在过去i
·
2024-01-16 03:27
JAVA并发编程的艺术
java
jvm
开发语言
JAVA并发
编程-从ReentrantLock看AQS实现源码解读
ReentrantLock的构造方法//默认非公平锁publicReentrantLock(){sync=newNonfairSync();}//指定publicReentrantLock(booleanfair){sync=fair?newFairSync():newNonfairSync();}ReentrantLock的加锁流程执行ReentrantLock的lock方法publicvoid
coder_sheep
·
2024-01-15 17:13
并发编程
java
数据结构
链表
jvm
JAVA并发
编程-AQS底层实现原理及应用(二)
JAVA并发
编程-AQS底层实现原理及应用(一)CANCELLED状态节点生成acquireQueued方法中的Finally代码:finalbooleanacquireQueued(finalNodenode
coder_sheep
·
2024-01-15 17:13
并发编程
java
算法
开发语言
数据结构
JAVA并发
编程-AQS底层实现原理及应用(一)
前言Java中的大部分同步类(CountDownLatch,Semaphore,CyclicBarrier、ReentrantLock等)都是基于AbstractQueuedSynchronizer(简称为AQS)实现的。AQS是一种提供了原子式管理同步状态、阻塞和唤醒线程功能以及队列模型的简单框架。本篇不讲述包含共享锁和ConditionQueue的部分。一、开发一个自定义Lock锁public
coder_sheep
·
2024-01-15 16:43
并发编程
java
开发语言
spring
boot
后端
ide
上一页
1
2
3
4
5
6
7
8
下一页
按字母分类:
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
其他