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并发
】—–J.U.C之线程池:ScheduledThreadPoolExecutor
ScheduledThreadPoolExecutor解析我们知道Timer与TimerTask虽然可以实现线程的周期和延迟调度,但是Timer与TimerTask存在一些缺陷,所以对于这种定期、周期执行任务的调度策略,我们一般都是推荐ScheduledThreadPoolExecutor来实现。下面就深入分析ScheduledThreadPoolExecutor是如何来实现线程的周期、延迟调度的
Zal哥哥
·
2024-01-26 20:40
重点归纳-多线程
线程-java内存模型(共享内存模型)定义1、在
并发编程
中,需要处理两个关键问题:线程之间如何通信及同步;而Java线程之间的通信由Java内存模型控制,Java内存模型决定一个线程对共享变量的写入何时对另一个线程可见
小丑的果实
·
2024-01-26 19:19
总结线程池
1.创建线程池的原因使用了多进程确实能够进行
并发编程
,但是频繁创建销毁进程,成本比较高。因此我们引入了线程(轻量级进程)。复用资源的方式,来提高了创建销毁效率。
头发掉光光√
·
2024-01-26 14:38
java-ee
【
并发编程
】锁死的问题——如何解决?以及如何避免?
目录1.如何解决一、死锁的定义和原因1.1定义1.2原因二、常见的死锁场景2.1线程间相互等待资源2.2嵌套锁的循环等待2.3对资源的有序请求三、死锁排查的方法3.1使用jstack命令3.2使用jconsole3.3使用VisualVM四、常见的解决方案4.1避免嵌套锁的循环等待4.2使用带超时的锁4.3使用资源分配图2.如何避免1.如何解决一、死锁的定义和原因1.1定义死锁是指两个或多个线程在
王果冻ddd
·
2024-01-26 13:42
java
开发语言
面试
【
并发编程
】 synchronized的普通方法,静态方法,锁对象,锁升级过程,可重入锁,非公平锁
目录1.普通方法2.静态方法3.锁对象4.锁升级过程5.可重入的锁6.不公平锁非公平锁的lock方法:1.普通方法将synchronized修饰在普通同步方法,那么该锁的作用域是在当前实例对象范围内,也就是说对于SyncDemosd=newSyncDemo();这一个实例对象sd来说,多个线程访问access方法会有锁的限制。如果access已经有线程持有了锁,那这个线程会独占锁,直到锁释放完毕之
王果冻ddd
·
2024-01-26 13:11
java
jvm
开发语言
【
并发编程
】AQS——详细解释公平锁,非公平锁,独占锁,什么是可重入以及condition
目录1、公平2.非公平3.独占锁4.可重入5.condition1、公平第一步:获取状态的state的值。如果state=0即代表锁没有被其它线程占用,执行第二步。如果state!=0则代表锁正在被其它线程占用,执行第三步。第二步:判断队列中是否有线程在排队等待。如果不存在则直接将锁的所有者设置成当前线程,且更新状态state。如果存在就入队。第三步:判断锁的所有者是不是当前线程。如果是则更新状态
王果冻ddd
·
2024-01-26 13:09
java
开发语言
后端
理解线程池原理--手写一个线程池
理解线程池原理--手写一个线程池实现思路用户创建出线程池对象,自定义线程池的核心线程数、
阻塞队列
大小、拒绝策略。
小孙的Blog
·
2024-01-26 10:57
java
Java线程池是什么?模拟一个简单的Java线程池
一、前言为了实现
并发编程
,于是就引入了进程这个概念。进程就相当于操作系统的一个任务。多个进程同时执行任务,就实现了
并发编程
,能够更快的执行。
见闻色霸气~
·
2024-01-26 10:23
JavaEE
java
后端
intellij-idea
goroutine并发扫描MySQL表_GO语言的进阶之路-goroutine(并发)
优雅的
并发编程
范式,完善的并发支持,出色的并发性能是Go语言区别于其他语言的一大特色。使用Go语言开发服务器程序时,
佘明
·
2024-01-26 09:09
经典C#面试:C#下多线程的实现方式与区别详解,包括并行编程和
并发编程
并行编程和
并发编程
是两种不同的编程范式,它们在C#中都有对应的实现方式。本文将详细介绍这些实现方式,并提供相应的示例。一、使用Thread类Thread类是C#中实现
白话Learning
·
2024-01-26 08:33
C#
c#
面试
开发语言
【
Java并发
】聊聊Future如何提升商品查询速度
java中可以通过newthread、实现runnable来进行实现线程。但是唯一的缺点是没有返回值、以及抛出异常,而callable就可以解决这个问题。通过配合使用futuretask来进行使用。并且Future提供了对任务的操作,取消,查询是否完成,获取结果。DemoFutureTaskfutureTask=newFutureTask(()->{Thread.sleep(10000);Syst
qxlxi
·
2024-01-26 07:49
#
并发编程
java
开发语言
咕泡教育面试
8、Lock和Sychronized区别9、线程池是怎么知道一个线程是否完成的10、HashMap是怎么解决hash冲突的11、什么叫做
阻塞队列
的有界和无界12、Dubbo的服务请求失败如何处理13、ConcurrentHashMap
小晨想好好学习
·
2024-01-26 06:57
面试
面试
扎哇面试准备
我会的技能是
并发编程
、MySQL、Redis、Spring、SpringMVC、SpringBoot、SpringCloudAlibabaNacos、Sentinel、Seata、SpringCloudGateway
速 �
·
2024-01-26 06:57
面试
职场和发展
揭秘
Java并发
包(JUC)的基石:AQS原理和应用
Java并发
包(JUC)为我们提供了丰富的并发工具,其中不乏我们熟悉的ReentrantLock、Semaphore等。
地瓜伯伯
·
2024-01-26 02:19
源码
java
jvm
spring
cloud
spring
boot
微服务
面试
架构
面试官:谈谈你对
并发编程
的理解?
并发编程
的优缺点充分利用多核CPU的计算能力:通过
并发编程
的形式可以将多核CPU的计算能力发挥到极致,性能得到提升方便进行业务拆分,提升系统并发能力和性能:在特殊的业务场景下,先天的就适合于
并发编程
。
lichongxyz
·
2024-01-25 22:49
并发编程
java
数据库
开发语言
守护线程和用户线程有什么区别
守护线程(DaemonThread)和用户线程(UserThread)是
并发编程
中常用的两种线程类型,它们在行为和生命周期管理上有一些区别。
lichongxyz
·
2024-01-25 22:49
并发编程
java
开发语言
C++
并发编程
:互斥锁std::mutex和lock_guard的使用
(1)std::mutex是C++标准库中提供的一种用于多线程同步的互斥锁实现。mutex用于控制多个线程访问共享资源,确保在任意时刻只有一个线程可以访问该资源,避免数据竞争。线程在访问共享资源之前首先需要锁住std::mutex,然后在完成操作后释放锁。这确保了同一时刻只有一个线程可以访问被保护的资源,从而防止多线程并发访问导致的数据不一致性。(2)std::lock_guard是C++标准库中
暮色_年华
·
2024-01-25 22:10
c++
c++
开发语言
ThreadLocal
用途ThreadLocal的主要用途包括:维护线程封闭性:它可以确保对象的线程局部性,使得
并发编程
更安全。存储线程特有的数据:如用户身份信息、事务状态等。性能优化:避免了同步开销,
辞暮尔尔-烟火年年
·
2024-01-25 19:38
java
后端
详解SpringCloud微服务技术栈:一文速通RabbitMQ,入门到实践
DockerCompose部署微服务集群订阅专栏:微服务技术全家桶希望文章对你们有所帮助RabbitMQ的使用还是很广泛的,主要是用在异步通讯的过程中的消息中间件,而在之前我学习Redis的时候,已经分别通过
阻塞队列
和
布布要成为最负责的男人
·
2024-01-25 19:21
微服务技术全家桶
spring
cloud
微服务
rabbitmq
中间件
java
spring
docker
java开发——《
并发编程
》
目录一.jmm二.并发了什么1.只有一个核(单核)并发还有没有意义2.单核,还有什么可见性问题3.并发和并行三.volitaile1.变量的可见性问题2.原因是什么3.本次修改的变量直接刷到主内存4.声明其他内存对于这个地址的缓存无效四.happens-befo1.顺序性问题五.volitaile+cas1.原子性问题2.轻量级锁实现方案六.并发如何和项目结合七.synchronized1.普通方
王果冻ddd
·
2024-01-25 18:04
java
开发语言
后端
Obsidian笔记软件结合cpolar实现安卓移动端远程本地群晖WebDAV数据同步
推荐:kwan的首页,持续学习,不断总结,共同进步,活到老学到老导航檀越剑指大厂系列:全面总结java核心技术点,如集合,jvm,
并发编程
redis,kafka,Spring,微服务,Netty等常用开发工具系列
檀越剑指大厂
·
2024-01-25 17:51
s20
cpolar
笔记
android
Java 集合List相关面试题
本文收录于java面试题系列,大家有兴趣的可以看一看相关专栏Rust初阶教程、go语言基础系列、spring教程等,大家有兴趣的可以看一看
Java并发编程
系列,设计模式系列、goweb开发框架系列正在发展中
过去日记
·
2024-01-25 16:41
java面试题
java
list
【揭秘】Executor和ExecutorService区别?
Executor和ExecutorService都是
Java并发编程
中的重要概念,两者都用于异步地执行任务,但是它们之间存在一些重要的区别:设计目标:Executor:设计目标是提供一个简单的、统一的、
程序员古德
·
2024-01-25 16:10
java
开发语言
Java 集合Map相关面试题
本文收录于java面试题系列,大家有兴趣的可以看一看相关专栏Rust初阶教程、go语言基础系列、spring教程等,大家有兴趣的可以看一看
Java并发编程
系列,设计模式系列、goweb开发框架系列正在发展中
过去日记
·
2024-01-25 16:09
java面试题
java
开发语言
【python进阶篇】
并发编程
『上』
进程进程是计算机中的程序关于某数据集合的一次运行活动,是系统进行资源分配和调度的基本单位,是操作系统结构的基础。狭义定义:进程是正在运行的程序的实例。广义定义:进程是一个具有一定独立功能的程序关于某个数据集合的一次运行活动。同一个程序执行两次就会在操作系统中出现两个进程,所以我们可以同时运行一个软件,分别做不同的事情也不会混乱。进程调度先来先服务算法短作业优先调度算法时间片轮转法多级反馈队列进程的
洛临_
·
2024-01-25 12:23
python
pycharm
Java并发编程
之并发集合
一、ConcurrentHashMap(是线程高效并安全的hashMap)1.hashMap的底层原理HashMap在JDK1.8之前的实现方式数组+链表,但是在JDK1.8后对HashMap进行了底层优化,改为了由数组+链表或者数值+红黑树实现,主要的目的是提高查找效率Hashcode他是根据数组的长度进行一个按位与运算和亦或运算另外通过平方取中法取余法伪随机数法都可以得到hashcode二次哈
学习中的程序媛~
·
2024-01-25 10:31
java
开发语言
【并发】什么是 CAS
个人博客:个人主页个人专栏:JAVA⛳️功不唐捐,玉汝于成目录前言正文CAS操作的基本步骤如下:结语我的其他博客前言在当今软件开发领域,多线程和
并发编程
已经成为不可或缺的一部分。
还在路上的秃头
·
2024-01-25 08:33
#
并发编程
缓存
笔记
面试
java
并发
【并发】关于一些CAS 的问题
个人博客:个人主页个人专栏:JAVA⛳️功不唐捐,玉汝于成目录前言正文CAS容易造成ABA问题:不能保证代码块的原子性:CAS造成CPU利用率增加:结语我的其他博客前言在
并发编程
的领域,CAS(CompareandSwap
还在路上的秃头
·
2024-01-25 08:33
#
并发编程
java
面试
笔记
并发编程
【
并发编程
篇】
阻塞队列
BlockingQueue
文章目录简述
阻塞队列
BlockingQueue4种API⭐抛出异常队列已满队列已空️检测队首元素⭐有返回值,没有异常️检测队首元素⭐阻塞,一直等待⭐超时等待简述
阻塞队列
BlockingQueue
阻塞队列
是一种特殊的队列
在下小吉.
·
2024-01-25 07:27
并发编程
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
并发编程
Python爬虫之协程
简化
并发编程
:协程采用显
Az_plus
·
2024-01-24 23:07
Study
python
爬虫
开发语言
10.14-10.20周复盘
一、技术学习
并发编程
系列8节课,学了6节课,总结了前三节课学习。1、线程基础。线程的6种状态,启动退出的底层原理,查看虚拟机hotspot的源码。
海边的奔跑
·
2024-01-24 21:10
浅谈高性能数据库集群 —— 分库分表
源码精品专栏精尽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
开发语言
线程进阶(以解决线程安全问题为主)、volatile的底层实现
并发执行:在一个时间段内对多个线程依次执行并行执行:是真正意义上同时执行,两个线程在同一时间节点上一起执行
并发编程
的核心问题:1,不可见性:一个线程对共享变
Adellle
·
2024-01-24 04:16
JAVA进阶
java
开发语言
运维
java软件实训Day1
一、大厂实习龙校招需要掌握的技能点JavaEE实习需掌握哪些知识点JavaSE(数组、面向对象(封装、继承、多态+抽象)接口、异常、多线程(问的多《
并发编程
的艺术》)、集合(大概率会问到底层源码。
Crabapplemissing
·
2024-01-24 03:07
java
开发语言
concrt140.dll丢失怎么恢复?分享给你六种方法用于解决问题
concrt140.dll是一个MicrosoftWindows操作系统中用于支持
并发编程
的动态链接库(DLL)文件。
sheng12345678rui
·
2024-01-24 03:05
经验分享
dll文件
dll丢失
dll
游戏
实现一个
阻塞队列
classMyBlockingQueue{privateint[]items=newint[1000];privateinttail=0;privateinthead=0;privateintsize=0;publicvoidput(intelem)throwsInterruptedException{synchronized(this){while(size==items.length){thi
_蓝天IT_
·
2024-01-24 03:03
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
学习
开发语言
优化java代码提升响应速度
避免不必要的同步:在
并发编程
中,避免使用过多的同步机制,尽量使用线程安全的数据结构或采用更轻量级的同步方式,例如使用java.util.
wsd_ontheroad
·
2024-01-23 22:17
java
C++
并发编程
-1.线程管理
将按照书目录分为九章节介绍C++
并发编程
,尽可能简化本书内晦涩难懂知识点。本章节主要讲解线程使用基础。详细介绍线程使用基础(线程发起、等待、参数、异常处理)、线程管控(归属权、并发数量等)。
冷瑾瑜
·
2024-01-23 22:49
开发语言
c++
服务器
java
上一页
6
7
8
9
10
11
12
13
下一页
按字母分类:
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
其他