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
】线程通信与等待唤醒机制
文章目录1.线程通信2.Object类中的wait和notify方法实现等待和唤醒3.Condition接口中的await和signal方法实现等待和唤醒4.LockSupport实现等待和唤醒4.1优点1.线程通信多个线程在处理同一个资源,但是处理的动作(线程的任务)却不相同,于是这些线程之间就存在通信问题,称为线程间通信。比如:生产者消费者问题。当多个线程间存在通信问题时,我们希望它们能有规律
比尔高特
·
2023-10-15 12:55
#
03
JUC
java
SpringBoot自动装配
源码解析
前言还记得就在去年大学刚毕业那会儿,第一次去面试被问到,SpringBoot为什么可以自动装配的时候,当时伙计憋了半天憋出一个@SpringBootApplication然后就没有了,面试官似笑非笑的跳过了这个话题,今天突然想起这件事,那我们就来看看springboot自动装配到底是个什么牛鬼蛇神springboot全局配置文件我们都知道在使用springboot的时候除了start还有一个全局的
非著名叠码仔
·
2023-10-15 12:50
SpringBoot
spring
boot
springboot自动装配
bean
upload-labs pass-1-21 wp(附
源码解析
)
ContentsPreface本博文仅限于信息安全防御教学,切勿用于其他用途!!!Pass-1前端验证绕过关卡简介函数分析代码分析通关方法Pass-2Content-Type绕过关卡简介函数分析代码分析通关方法Pass-3黑名单绕过关卡简介函数分析代码分析通关方法Pass-4.htaccess绕过关卡简介函数分析代码分析通关方法Pass-5新增的一关关卡简介函数分析源码分析通关方法Pass-6大小
丶Maple
·
2023-10-15 12:01
Upload
upload
php
WebViewJavascriptBridge
源码解析
最近项目中,把APP和小程序里80%的页面都换成了H5,目的是快速开发,方便热更新。前端除了要保证代码高度复用并且降低耦合,还要主动和负责Native开发的同学沟通,定义好协议,留下文档,方便后期维护。对于混合开发来说,最核心的是数据交互:小程序端:在不影响用户体验的情况下,直接或间接的使用现有规则进行开发。Native端:使用了目前市面上成熟的WebViewJavaScriptBridge开源库
思考的快与慢
·
2023-10-15 12:11
SpringBoot自动装配
源码解析
(40000字大章)
CSDN里貌似没法搞代码的自动换行,嫌看着麻烦的话可以直接看我的笔记里的版本,排版会更舒服些https://note.youdao.com/s/IgsPbrpd。目录一、原理说明二、源码讲解
[email protected]
@
[email protected]
@EnableAutoConfiguration2.5AutoCo
寿命齿轮
·
2023-10-15 11:02
SpringBoot框架学习
spring
boot
后端
java
Flink中KeyBy、分区、分组的正确理解
源码解析
keyBy得到的结果将不再是DataStream,而是会将DataStream转换为KeyedStream(键控流),KeyedStream可以认为是“分区流”或者“键控流”,它是对DataStream
文文鑫
·
2023-10-15 11:08
Flink
flink
大数据
Java开发,参数类型如何选?int, Integer, AtomicInteger?
概述int是基础的变量类型;Integer是包装类型;AtomicInteger是来自
JUC
的一个在并发编程场景下重要的包,对于Java开发人员来说,确实需要对其都有充分的认识与了解。
小智Chris
·
2023-10-15 11:04
Java
面试
银行
java
开发语言
多线程&
JUC
文章目录多线程一.什么是多线程二.多线程的两个概念三.线程的实现方式四.常见的成员方法五.线程安全的问题六.死锁七.生产者和消费者多线程一.什么是多线程进程:是程序的基本执行实体理解:每一个运行的软件就是一个进程线程:是操做系统能够进行运算调度的最小单位,它被包含在进程之中,是进程中的实际运作单位理解:应用软件中互相独立,可以同时运行的功能为什么要有多线程?有了多线程就可以让程序同时做多件事情可以
懒羊羊asd
·
2023-10-15 09:27
java入门笔记
java
多线程
【
JUC
】CompletableFuture
文章目录1.Future接口2.CompletableFuture的出现3.CompletableFuture四大静态方法4.使用演示5.常用方法5.1获得结果和触发计算5.2对计算结果进行处理5.3对计算结果进行消费5.4对计算速度进行选用5.5对计算结果进行合并1.Future接口Future接口(FutureTask实现类)定义了操作异步任务执行一些方法,如获取异步任务的执行结果、取消任务的
比尔高特
·
2023-10-15 07:14
#
03
JUC
java
【
JUC
】中断机制(interrupt,interrupted,isInterrupted)
中断机制文章目录中断机制1.概述2.三大方法3.中断运行中的线程的方式1.概述首先一个线程不应该由其他线程来强制中断或停止,而是应该由线程自己自行停止,自己来决定自己的命运。所以Thread.stop,Thread.suspend,Thread.resume都已经被废弃了其次在Java中没有办法立即停止一条线程,然而停止线程却显得尤为重要,如取消一个耗时操作。因此,Java提供了一种用于停止线程的
比尔高特
·
2023-10-15 07:08
#
03
JUC
java
Spring
源码解析
——AOP目标方法和增强方法的执行
正文上一篇博文中我们讲了代理类的生成,这一篇主要讲解剩下的部分,当代理类调用时,目标方法和代理方法是如何执行的,我们还是接着上篇的ReflectiveMethodInvocation类Proceed方法来看。最全面的Java面试网站publicObjectproceed()throwsThrowable{//首先,判断是不是所有的interceptor(也可以想像成advisor)都被执行完了。/
程序员大彬
·
2023-10-15 06:47
spring
java
spring
java
后端
Spring
源码解析
——@Transactional注解的声明式事物介绍
正文面的几个章节已经分析了spring基于@AspectJ的源码,那么接下来我们分析一下Aop的另一个重要功能,事物管理。最全面的Java面试网站事务的介绍1.数据库事物特性原子性多个数据库操作是不可分割的,只有所有的操作都执行成功,事物才能被提交;只要有一个操作执行失败,那么所有的操作都要回滚,数据库状态必须回复到操作之前的状态一致性事物操作成功后,数据库的状态和业务规则必须一致。例如:从A账户
程序员大彬
·
2023-10-15 06:15
java
spring
spring
数据库
java
Mybatis插件+注解实现数据脱敏
每天14:00更新文章,每天掉亿点点头发...源码精品专栏原创|Java2021超神之路,很肝~中文详细注释的开源项目RPC框架Dubbo
源码解析
网络应用框架Netty
源码解析
消息中间件RocketMQ
Java基基
·
2023-10-15 05:01
加密解密
javabean
java
entity
mybatis
理论:第八章:线程是什么,有几种实现方式,它们之间的区别是什么,线程池实现原理,
JUC
并发包,ThreadLocal与Lock和Synchronize区别
什么是线程?讲个故事给你听,让你没法去背这个题,地址:https://blog.csdn.net/java_wxid/article/details/94131223有几种实现方式?继承Thread类实现Runnable接口实现Callable接口线程池方式优缺点1.继承Thread类优点、代码简单。缺点、该类无法集成别的类。2.实现Runnable接口优点、继承其他类。同一实现该接口的实例可以共
我是廖志伟
·
2023-10-15 02:39
#
理论知识
java
多线程
JUC
并发
JUC
第二十八讲:
JUC
工具类: Semaphore详解
JUC
工具类:Semaphore详解本文是
JUC
第二十八讲,
JUC
工具类:Semaphore详解。Semaphore底层是基于AbstractQueuedSynchronizer来实现的。
程序员 jet_qi
·
2023-10-15 00:53
java基础之多线程
JUC
Semaphore
AQS
计数信号量
令牌
JUC
第二十九讲:
JUC
工具类: Phaser详解
JUC
工具类:Phaser详解本文是
JUC
第二十九讲,
JUC
工具类:Phaser详解。
程序员 jet_qi
·
2023-10-15 00:12
java基础之多线程
JUC
Phaser
同步辅助类
运行机制
实现原理
源码分析
黄聪:buffer overflow detected问题解决及gcc-4.1安装
gcc-4.1安装办法(转载自http://www.cnblogs.com/n
juc
slzh/archive/2010/06/04/1751703.html)由于学习的原因
weixin_34304013
·
2023-10-14 23:55
数据库
buffer overflow detected问题解决及gcc-4.1安装
gcc-4.1安装办法(转载自http://www.cnblogs.com/n
juc
slzh/archive/2010/06/04/1751703.html)由于学习的原因
iteye_20755
·
2023-10-14 23:51
c/c++
数据库
分布式任务调度平台 XXL-JOB 原理
源码解析
分布式任务调度平台XXL-JOB原理
源码解析
分布式任务调度平台XXL-JOB
源码解析
文章目录分布式任务调度平台XXL-JOB原理
源码解析
前言这篇文章是阅读了xxl-job源码后的学习记录,分享出来请求大家指正和交流
zmgab
·
2023-10-14 20:35
Java
XXL-JOB
#
Quartz
分布式
java
一文说清 OCLint
源码解析
及工作流分析
image.png目标读者一线工程师,架构师预计阅读时间15-20min完成阅读的收获了解静态代码审核技术的原理了解静态代码审核技术工作流不得不提的Clang由于OCLint是一个基于Clangtool的静态代码分析工具,所以不得不提一下Clang。Clang作为LLVM的子项目,是一个用来编译c,c++,以及oc的编译器。OCLint本身是基于Clangtool的,换句话说相当于做了一层封装。它
大头兄弟技术团队
·
2023-10-14 20:58
属性动画
源码解析
1.创建属性动画通常我们可以通过ObjectAnimator.ofXX()的各种方法创建属性动画,所以我们可以以其中一个方法ofFloat为例进行说明。valimageView=ImageView(context)valanim=ObjectAnimator.ofFloat(imageView,"translationY",0f,100f)上面就是调用ObjectAnimator的静态方法来创建动
OhIAm
·
2023-10-14 19:44
序列化:ProtoBuf 与 JSON 的比较
源码精品专栏原创|Java2020超神之路,很肝~中文详细注释的开源项目RPC框架Dubbo
源码解析
网络应用框架Netty
源码解析
消息中间件RocketMQ
源码解析
数据库中间件Sharding-JDBC
Java基基
·
2023-10-14 19:57
编程语言
protobuf
json
jvm
微软
ArrayList
源码解析
ArrayList的本质是动态数组。既然是数组,肯定是可以随机访问的。ArrayList是非线程安全的,当当个线程并发访问同一个ArrayList时,会抛出ConcurrentModificationException,这就是fail-fast机制。publicclassArrayListextendsAbstractListimplementsList,RandomAccess,Cloneabl
nxiangbo
·
2023-10-14 19:39
【kubernetes/k8s源码分析】eviction机制原理以及
源码解析
kubernetesv1.12.1What?kubelet驱赶的是节点上的某些Pod,驱赶哪些Pod与Qos机制有关(1.8),1.9以后的版本请看下文分解只有当节点内存和磁盘资源紧张时,目的就是为了回收node节点的资源SoftEvictionThresholds软驱逐机制表示,当node的内存/磁盘空间达到一定的阈值后,要观察一段时间,如果改善到低于阈值就不进行驱逐,若这段时间一直高于阈值就进
张忠琳
·
2023-10-14 19:10
kubernetes
JUC
并发编程——集合类不安全及Callable(基于狂神说的学习笔记)
集合类不安全List不安全packageunsafe;importPC.A;importjava.util.*;importjava.util.concurrent.CopyOnWriteArrayList;//ArrayList线程不安全,在多线程下使用ArrayList会报错://java.util.ConcurrentModificationException并发修改异常publicclas
苏三有春
·
2023-10-14 18:14
JUC并发编程
学习
笔记
java
JUC
并发编程——常用的辅助类(基于狂神说的学习笔记)
常用的辅助类countDownLatch减法计数器本质上是等待一系列线程完成它的任务的计数工具允许一个或多个线程等待直到在其他线程中执行的一组操作完成的同步辅助。使用给定计数初始化CountDownLatch。所述await种方法阻塞,直到当前计数达到零由于的调用countDown()方法,之后所有等待的线程被释放和任何后续调用await立即返回。这是一次性现象-计数无法重置。如果您需要重置计数的
苏三有春
·
2023-10-14 18:10
JUC并发编程
学习
笔记
java
Kafka SASL认证授权(四)认证
源码解析
KafkaSASL认证授权(四)认证
源码解析
。
代码讲故事
·
2023-10-14 15:46
架构师成长之路
kafka
分布式
sasl
acl
scram
认证
授权
Kafka SASL认证授权(五)ACL
源码解析
KafkaSASL认证授权(五)ACL
源码解析
。
代码讲故事
·
2023-10-14 15:46
架构师成长之路
kafka
分布式
sasl
scram
acl
认证
授权
源码解析
FlinkKafkaConsumer支持周期性水位线发送
背景当flink消费kafka的消息时,我们经常会用到FlinkKafkaConsumer进行水位线的发送,本文就从源码看下FlinkKafkaConsumer.assignTimestampsAndWatermarks指定周期性水位线发送的流程FlinkKafkaConsumer水位线发送1.首先从Fetcher类开始,创建Fetcher类的时候会构建一个周期性的水位线发送线程并启动//ifwe
lixia0417mul2
·
2023-10-14 15:33
flink
大数据
flink
大数据
源码解析
FlinkKafkaConsumer支持punctuated水位线发送
FlinkKafkaConsumer支持当收到某个kafka分区中的某条记录时发送水位线,比如这条特殊的记录代表一个完整记录的结束等,本文就来解析下发送punctuated水位线的源码punctuated水位线发送
源码解析
lixia0417mul2
·
2023-10-14 15:28
flink
kafka
大数据
flink
第13章 并发编程高阶(二)
参考答案1、底层实现层面synchronized是JVM层面的锁,是Java关键字reentrantlock是
JUC
下面的一个类,是java实现的2、是否可手动释放syn
Eclipse_2019
·
2023-10-14 14:24
白话Java面试
java
开发语言
多线程
高并发
Reentrantlock
Reentrantlock.lock()非公平锁
源码解析
。
ppamos
·
2023-10-14 12:06
flask-
源码解析
:session
7.flask
源码解析
:sessionsession简介在解析session的实现之前,我们先介绍一下session怎么使用。
泷汰泱
·
2023-10-14 12:00
【干货】教你如何通过Netty编写一个SS代理服务器
准备本文假设读者具备以下知识:熟悉Java网络编程(了解BIO/NIO)与多线程编程(了解
JUC
中的常用工具)熟悉Netty网络编程框架熟悉Socks5代理协议、SSL加密通信开发环境:JDK1.8IntellijIDEA
A__Plus
·
2023-10-14 12:55
AFNetworking
源码解析
与面试考点思考
最近重读了AFNetworking3.x的源码,算是温故而知新吧。也梳理了一些优秀的代码细节和面试考点,罗列下来,发现这个库小而精致,简直初学者的宝藏库。开源库怎么看?先说个题外话,阅读优质的开源代码库,绝对是程序员们快速提升自我的有效途径,而怎样高效率的去阅读源码同样也是一个问题,不知道有没有人和我之前一样,碰到过读倒是读了,但总感觉收获不大的情况。这里分享一下我的一些读码经验:多思考,多抛出问
一意孤行的程序员
·
2023-10-14 10:20
objective-c
ios
xcode
面试
JUC
之ForkJoin并行处理框架
ForkJoin并行处理框架Fork/Join它可以将一个大的任务拆分成多个子任务进行并行处理,最后将子任务结果合并成最后的计算结果,并进行输出。类似于mapreduce其实,在Java8中引入的并行流计算,内部就是采用的ForkJoinPool来实现的。•ForkJoinTask:我们要使用Fork/Join框架,首先需要创建一个ForkJoin任务。该类提供了在任务中执行fork和join的机
Chancezhou
·
2023-10-14 09:22
JUC
java
JUC
之ReentrantReadWriteLock
读写锁现实中有这样一种场景:对共享资源有读和写的操作,且写操作没有读操作那么频繁。在没有写操作的时候,多个线程同时读一个资源没有任何问题,所以应该允许多个线程同时读取共享资源;但是如果一个线程想去写这些共享资源,就不应该允许其他线程对该资源进行读和写的操作了。针对这种场景,JAVA的并发包提供了读写锁ReentrantReadWriteLock,它表示两个锁,一个是读操作相关的锁,称为共享锁;一个
Chancezhou
·
2023-10-14 09:52
JUC
java
JUC
之BlockingQueue
常见的BlockingQueue9.4.1ArrayBlockingQueue(常用)基于数组的阻塞队列实现,在ArrayBlockingQueue内部,维护了一个定长数组,以便缓存队列中的数据对象,这是一个常用的阻塞队列,除了一个定长数组外,ArrayBlockingQueue内部还保存着两个整形变量,分别标识着队列的头部和尾部在数组中的位置。ArrayBlockingQueue在生产者放入数据
Chancezhou
·
2023-10-14 09:52
JUC
java
项目实战:使用
JUC
的CompletableFuture执行任务,并根据返回值执行异步回调
前言程序猿大吉在实施的威逼之下又有了新的需求,翻译成技术语言,大致是这样的:不停地调用一个远程接口(成千上万次)。该接口会返回一串id,并拿着这个id回写我们本地的数据库。这个远程接口响应时间特别久,大概要1到3s。而一旦接口返回一串id,并将id回写到本地数据库,这个过程比较短,只需要0.05s左右。所以我想到了将查询远程接口封装成一个函数,将回写本地数据库封装成一个函数,将异常处理封装成一个函
@大吉
·
2023-10-14 09:21
JavaSE
线程池
多线程
异步
回调函数
JUC
JUC
高并发编程之CompletableFuture
1、Future和Callable接口Future接口定义了操作异步任务执行一些方法,如获取异步任务的执行结果、取消任务的执行、判断任务是否被取消、判断任务执行是否完毕等。Callable接口中定义了需要有返回的任务需要实现的方法为什么使用异步任务?当主线程让一个子线程去执行任务,子线程可能比较耗时,启动子线程开始执行任务后,主线程就去做其他事情了,过了一会才去获取子任务的执行结果。2、Futur
HEU_THY
·
2023-10-14 09:50
java
JUC
-CompletableFuture异步回调
1.无返回值的runAsync异步回调2.有返回值的supplyAsync异步回调publicclassCompletableFuture_{publicstaticvoidmain(String[]args)throwsException{//没有返回值的异步回调runAsync()CompletableFuturecompletableFuture1=CompletableFuture.run
知之为知
·
2023-10-14 09:50
Java
java
java
juc
之CompletableFuture
supplyAsync/runAsync开启任务thenComposeAsync连接任务thenCombineAsync合并任务一、创建异步任务@Testpublicvoidtest4()throwsException{ExecutorServiceexecutorService=Executors.newFixedThreadPool(5);//supplyAsync相当于ExecutorSer
死亡蔓延
·
2023-10-14 09:20
java本身
java
JUC
之 CompletableFuture
——CompletableFutureFutureFuture接口(FutureTask实现类)定义了操作异步任务执行的一些方法,如获取异步的执行结果、取消任务的执行、判断任务是否被取消、判断任务执行是否完毕例如:主线程让一个子线程去执行任务,子线程可能比较耗时,启动子线程开始执行任务后,主线程就去做其他事情了,忙其他事情或者先执行完,过了一会才去获取子任务的执行结果或变更的任务状态Future接
程序少年不秃头
·
2023-10-14 09:20
Java
java
jvm
开发语言
JUC
并发编程之CompletableFuture基础用法
目录实现多线程的四种方式方式一:继承Thread类方式二:实现Runnable接口方式三:实现Callable接口方式四:线程池创建异步对象回调方法handle方法线程串行化任务组合组合任务单任务完成及执行实现多线程的四种方式方式一:继承Thread类publicstaticclassThread01extendsThread{@Overridepublicvoidrun(){}}执行任务方式:T
算不出来没办法
·
2023-10-14 09:19
java
java
开发语言
Java ---
JUC
的CompletableFuture的使用
目录一、Future接口二、Future接口的功能三、FutureTask四、CompletableFuture背景及使用4.1、CompletionStage4.2、CompletableFuture4.3、四个静态方法4.4、减少阻塞和轮询4.5、使用CompletableFuture完成电商大比价五、CompletableFuture常用API5.1、获取结果5.2、主动触发计算5.3、对计
鸭鸭老板
·
2023-10-14 09:17
JUC
面试
java
开发语言
JUC
-CompletableFuture的常用方法
1.获得结果和触发计算2.对计算结果进行处理thenApply()和handle()的区别就是异常的处理方式不同publicstaticvoidmain(String[]args){Integerresult=CompletableFuture.supplyAsync(()->{return1;},executor).thenApply((f->{returnf+2;})).thenApply(f
花哥码天下
·
2023-10-14 09:16
多线程
java
JUC
-CompletableFuture
FutureTaskpublicstaticvoidmain(String[]args)throwsException{FutureTaskfutureTask=newFutureTask{System.out.println(Thread.currentThread().getName()+"comein");try{TimeUnit.SECONDS.sleep(5);}catch(Interr
花哥码天下
·
2023-10-14 09:46
面试
多线程
java
JUC
学习:CompletableFuture概念与实战
在一些简单的业务场景使用Future创建异步任务是完全足够的。当业务场景比较复杂时,推荐使用CompletableFuture。CompletableFuture同时实现了Future、CompletionStage两个接口。CompletionStage代表异步计算过程的某一个阶段,一个阶段完成后则会触发另一个阶段。一、CompletableFuture与Future的对比1.获取异步任务的结果
哇库哇库wakuwaku
·
2023-10-14 09:46
JUC高并发编程
学习
java
spring
JUC
之 completableFuture
前身Future作用定义了操作异步任务执行的一些方法,如获取异步任务的执行结果、取消任务的执行、判断任务执行是否完毕等。专门用来为主线程处理耗时的任务特点多线程有返回值异步处理实现类FutureTask代码示例publicclassFutureThread{publicstaticvoidmain(String[]args)throwsExecutionException,InterruptedE
洋葱圈骑士
·
2023-10-14 09:45
java
jvm
前端
JUC
—CompletableFuture笔记
CompletableFuture笔记1.Future和Callable接口2.FutureTask3.引出CompletableFuture3.1CompletableFuture和CompletionStage介绍3.2核心的四个静态方法,来创建一个异步操作1)runAsync无返回值2)supplyAsync()有返回值3.3案例精讲-从电商网站的比价需求说开去3.4说说join和get对比
风过无痕2018
·
2023-10-14 09:44
JUC
java
开发语言
后端
上一页
41
42
43
44
45
46
47
48
下一页
按字母分类:
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
其他