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并发编程学习笔记
保证线程安全的三种方式
分析问题:4w1h:whatwherewhywhenhow摘要:1,什么是线程安全2,如何保证线程安全3,线程安全的三种实现方式具体实现4,总结1,我们来看一下什么是线程安全参考《
Java并发
编程实践》
Y阳阳
·
2024-01-25 02:33
Java基础
java
多线程
《
Java并发
编程的艺术》2 第九章 Java中的线程池
文章目录第九章、Java中的线程池1.线程池的实现原理2.线程池的参数3.向线程池提交任务3.1execute()3.2submit()3.3实战4.关闭线程池5.合理分配线程池6.线程池的监控第九章、Java中的线程池Java中的线程池时运用场景最多的并发框架,几乎所有需要异步或并发执行任务的程序都可以使用线程池。合理地使用线程池能带来三个好处:**降低资源消耗。**通过重复利用已创建的线程降低
HotRabbit.
·
2024-01-24 23:51
#
JUC
java
开发语言
多线程
线程池
【
Java并发
编程的艺术学习】第九章摘要
1.线程池的好处1)降低资源消耗2)提高响应速度3)提高线程的可管理性2.创建线程池的参数有哪些?有什么作用1)corePoolSize(线程池的基本大小):当提交一个任务到线程池时,线程池会创建一个线程来执行任务,即使其他空闲的基本线程能够执行新任务也会创建线程,等到需要执行的任务数大于线程池基本大小时就不再创建。如果调用了线程池的prestartAllCoreThreads()方法,线程池会提
一日三餐384
·
2024-01-24 23:21
java
学习
开发语言
Java 并发编程的艺术 pdf 下载
并发编程领域的扛鼎之作,作者是阿里和1号店的资深Java技术专家,对并发编程有非常深入的研究,《
Java并发
编程的艺术》是他们多年一线开发经验的结晶。
Java全栈布道师
·
2024-01-24 23:21
java
并发编程
Scratch
编程学习笔记
Scratch
编程学习笔记
1、聊一聊编程1.1-编程是什么2、Scratch3.02.1Scratch3.0安装2.2Scratch3.0介绍一、界面二、角色三、舞台四、指令积木介绍3、Scratch基础篇
秃突兔兔突秃
·
2024-01-24 21:34
学习
浅谈高性能数据库集群 —— 分库分表
源码精品专栏精尽Dubbo原理与源码69篇精尽Netty原理与源码61篇中文详细注释的开源项目
Java并发
源码合集RocketMQ源码合集Sharding-JDBC源码解析合集SpringMVC和Security
芋道源码
·
2024-01-24 18:35
Nginx反向代理
本文收录于Nginx系列,大家有兴趣的可以看一看相关专栏Rust初阶教程、go语言基础系列、spring教程等,大家有兴趣的可以看一看
Java并发
编程系列,设计模式系列、goweb开发框架系列正在发展中
过去日记
·
2024-01-24 16:23
Nginx
nginx
运维
MySQL面试题
本文收录于java面试题系列,大家有兴趣的可以看一看相关专栏Rust初阶教程、go语言基础系列、spring教程等,大家有兴趣的可以看一看
Java并发
编程系列,设计模式系列、goweb开发框架系列正在发展中
过去日记
·
2024-01-24 16:22
java面试题
mysql
数据库
Java框架篇面试题
本文收录于java面试题系列,大家有兴趣的可以看一看相关专栏Rust初阶教程、go语言基础系列、spring教程等,大家有兴趣的可以看一看
Java并发
编程系列,设计模式系列、goweb开发框架系列正在发展中
过去日记
·
2024-01-24 16:50
java面试题
java
开发语言
【JAVA】
Java并发
编程中的锁升级机制
个人博客:个人主页个人专栏:JAVA⛳️功不唐捐,玉汝于成目录前言正文四个级别锁锁升级的过程:偏向锁升级为轻量级锁:轻量级锁升级为重量级锁:结语我的其他博客前言在多线程环境下,保障数据的安全性是至关重要的任务之一。Java提供了丰富的并发编程工具,其中锁机制是保障共享资源同步访问的关键。本文将深入探讨Java中锁的升级过程,从无锁状态到偏向锁、轻量级锁,再到重量级锁,揭示了其背后的原理与实现。正文
还在路上的秃头
·
2024-01-23 23:38
JAVA
java
开发语言
面试
笔记
【
Java并发
编程的艺术学习】第四章摘要补全
压栈:拷贝一个方法压入栈1.线程的状态新建,就绪,运行,等待,阻塞,死亡2.一个类里可以定义多个类,但是只能有一个是public类的3.进入等待队列的进程要是没人唤醒,那么会一直等待,不会执行4.wait和sleep的区别都是立刻让出CPUwait:释放cpu,释放锁sleep:不释放锁,其他线程没有资格执行5.如何查看线程信息jstack命令6.线程间的通信:内存中共享变量7.notify()以
一日三餐384
·
2024-01-23 23:06
java
学习
开发语言
【
Java并发
编程的艺术学习】第七,八章摘要
原子更新基本类型类1.原子操作类:多线程下的操作是安全的,不需要自己加锁2.在原子类中不能用+-*/,而是采用这些方法AtomicBoolean:原子更新布尔型AtomicInteger:原子更新整形AtomicLong:原子更新长整型AtomicIntegerArray:原子更新整型数组里的元素AtomicLongArray:原子更新长整型数组里的元素AtomicReferenceArray:原
一日三餐384
·
2024-01-23 23:36
java
学习
开发语言
【
Java并发
编程的艺术学习】第六章摘要补全(待修)
6.1ConcurrentHashMap实现原理与使用1.hashmap实现原理1.7版本:数组+链表。用的是头插法,所以会出现多线程的时候产生环1.8版本:数组+链表+红黑树。链表长度>8变红黑树,<6变链表。出现碰撞用的是尾插法2.currenthashmap实现原理1.7版本:采用锁机制,在对某个子hash进行操作时,将该Segment锁定,不允许对其进行非查询操作,想对HashEntry操
一日三餐384
·
2024-01-23 23:35
java
学习
开发语言
【
Java并发
编程的艺术学习】第五章摘要补全
1.finally作用:担心一些资源可能无法正常释放,使用finally释放资源2.ReentrainLock释放死锁,使用这个接口,这样就不会产生死锁Locklock=newReentrainLock();lock.lock();try{}finally{lock.unlock();}3.重入锁支持重新进入的锁,表示该锁能够支持一个线程对资源的重复加锁。除此之外,该锁还支持获取锁时的公平和非公平
一日三餐384
·
2024-01-23 23:35
java
学习
开发语言
图文解析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
多线程
Linux shell
编程学习笔记
41:lsblk命令
边缘计算的挑战和机遇边缘计算面临着数据安全与隐私保护、网络稳定性等挑战,但同时也带来了更强的实时性和本地处理能力,为企业降低了成本和压力,提高了数据处理效率。因此,边缘计算既带来了挑战也带来了机遇,需要我们不断地研究0前言前几节学习我们均涉及到磁盘和文件存储,今天我们研究与块设备有关的命令。1lsblk命令的功能和格式我们可以使用命令lsblk--help命令查看它的用法:purpleEndure
紫郢剑侠
·
2024-01-22 06:54
Linux世界
麒麟操作系统
编程资料
linux
学习笔记
shell编程
shell脚本
块设备
lsblk命令
[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
Linux高性能服务器编程 学习笔记⑥
Linux高性能服务器
编程学习笔记
⑥高性能服务器程序框架模型C/S模型P2P模型编程框架I/O模型事件处理模型Reactor模式Proactor模式模拟Proactor模式并发模式半同步/半异步模式领导者
LonelyTaoist
·
2024-01-22 00:35
Linux高性能服务器
linux
网络
ubuntu
JAVA
编程学习笔记
,递归算法与IO流
Java是一种可以撰写跨平台应用软件的面向对象的程序设计语言。Java技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于PC、数据中心、游戏控制台、科学超级计算机、移动电话和互联网,同时拥有全球最大的开发者专业社群。给你学习路线:html-css-js-jq-javase-数据库-jsp-servlet-Struts2-hibernate-mybatis-spring4-springmv
小宇java
·
2024-01-21 15:18
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】小白友好的面向对象
编程学习笔记
目录OOP介绍类和对象方法参数静态包和import构造方法多态访问权限内部类抽象接口枚举匿名类bean类作用域OOP介绍Java是一种面向对象的编程语言,面向对象编程(Object-OrientedProgramming,简称OOP)是一种程序设计思想,它将现实世界中的事物抽象为对象,通过封装、继承和多态等特性来描述对象之间的关系和交互。面向对象编程的三大特性是:封装(Encapsulation)
Z3r4y
·
2024-01-20 20:31
java
学习
笔记
OOP
面向对象编程
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
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
Linux shell
编程学习笔记
40:stat命令
程序员必备的面试技巧“程序员必备的面试技巧,就像是编写一段完美的代码一样重要。在面试战场上,我们需要像忍者一样灵活,像侦探一样聪明,还要像无敌铁金刚一样坚定。只有掌握了这些技巧,我们才能在面试的舞台上闪耀光芒,成为那个令HR们心动的程序猿!”目录0前言1DOS、Windows、Linux中的文件存储1.1扇区1.2DOS、Windows:簇(Cluster)1.3Linux:块(block)和索引
紫郢剑侠
·
2024-01-19 07:52
linux
Shell脚本
脚本编程
学习笔记
stat命令
df命令
ls命令
三天吃透
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
上一页
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
其他