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源码解读
RocketMQ 消息发送
源码解读
可靠同步发送、可靠异步发送、单向发送、批量消息发送。RocketMQ消息发送需要考虑以下3个问题。1)消息队列如何进行负载?2)消息发送如何实现高可用?3)批量消息发送如何实现一致性?org.apache.rocketmq.common.message.MessagepublicclassMessageimplementsSerializable{privateStringtopic;//主题pr
键盘闷骚难
·
2023-04-13 19:47
java-rocketmq
rocketmq
java
Synchronized锁详解
在Java中,synchronized锁可能是我们最早接触的锁了,在JDK1.5之前synchronized是一个重量级锁,相对于
juc
包中的Lock,synchronized显得比较笨重。
lixiangchibang
·
2023-04-13 16:12
#
thread
java
开发语言
8.
JUC
线程高级-Condition和线程顺序执行
有的时候我们希望线程按照希望的顺序依次执行,比如线程A,B,C,按照顺序依次执行,这时候就要用到阻塞和唤醒,之前的时候我们学到过wait()和nofity/notifyAll()这两个方法,这里我们使用java.concurrent.locks.Lock接口来实现类似的功能;用到的包和类java.concurrent.locks.Lock:接口|-->java.concurrent.locks.R
匆匆岁月
·
2023-04-13 16:18
JUC
并发编程之线程池
1.自定义线程池步骤1自定义拒绝策略接口(实现函数式接口)//自定义拒绝策略@FunctionalInterfaceinterfaceRejectPolicy{voidreject(BlockingQueuequeue,Ttask);}步骤2自定义任务队列//自定义任务队列@Slf4jclassBlockingQueue{//1.任务队列双端队列privateDequequeue=newArray
晓风残月Lx
·
2023-04-13 16:17
JUC
java
开发语言
Spring WebSocket入门实例、
源码解读
、STOMP客户端
1SpringWebSocket入门实例在浏览器和服务器之间,使用WebSocket发送和接收消息。具体会使用到WebSocket子协议STOMP。1.1创建SpringBoot项目,添加WebSocket依赖后端SpringBoot的WebSocket依赖,前端使用Thymeleaf,所以需要webjars依赖。pom.xml如下:org.springframework.boot
94甘蓝
·
2023-04-13 08:37
项目中的那些事
spring
websocket
java
STOMP
jsonrpc
源码解读
位于$GOROOT/src/net/rpc/jsonrpc包下面的两个文件server.go和client.go是用json的序列化方式实现rpc的调用,默认使用go的rpc调用是传输的数据格式是gob,这是go语言特有的数据格式,能做到跨平台,但是很难做到跨语言,因此用jsonrpc来实现rpc功能,由于传输数据是json格式的,因此能做到跨语言,现在我们来分析一下jsonrpc下面的serve
初级赛亚人
·
2023-04-13 07:49
【1024面试必备】厂长爆肝万字之多线程高并发
JUC
编程⭐建议收藏
(1024程序猿节打卡)厂长爆肝万字之多线程高并发
JUC
编程⭐建议收藏❤️大家好,我是java厂长,1024程序员节也不能忘了学习,厂长带你体验多线程高并发的面试高频!
java厂长
·
2023-04-13 00:06
Java
1024程序员节
java
面试
jvm
juc
JUC
并发编程——CountDownLatch&Semaphore&CyclicBarrier
目录CountDownLatchCountDownLatch使用CountDownLatch源码分析SemaphoreSemaphore使用Semaphore源码分析CyclicBarrierCyclicBarrier使用CyclicBarrier源码分析CountDownLatchJava的concurrent包里面的CountDownLatch其实可以把它看作一个计数器,只不过这个计数器的操作
熟透的蜗牛
·
2023-04-12 21:49
JUC
JUC
多线程
并发编程
Juc
并发编程13——如何实现一个线程池?(万字源码剖析)
前言作者简介:半旧518,长跑型选手,立志坚持写10年博客,专注于java后端专栏简介:
juc
并发编程,讲解锁原理、锁机制、线程池、AQS、并发容器、并发工具等,深入源码,持续更新。
半旧518
·
2023-04-12 21:43
juc
java
开发语言
juc
并发
原力计划
Juc
并发编程11——深入源码:常用并发容器、阻塞队列使用与原理
前言本文将介绍常用的并发容器,比较传统容器与并发容器的区别,介绍并发容器的基本原理。是面试常考、工作常用的热门知识点。深入源码:常用并发容器、阻塞队列使用与原理前言1.传统容器安全吗?2.常用并发容器介绍2.1CopyOnWriteArrayList2.2ConcurrentHashMap3.阻塞队列3.1阻塞队列的介绍3.2ArrayBlockingQueue源码分析3.3Synchronous
半旧518
·
2023-04-12 21:12
juc
java
面试
开发语言
Juc
并发编程06——深入剖析队列同步器AQS源码
我们看下Reentrantock的源码。publicvoidlock(){sync.lock();}publicvoidunlock(){sync.release(1);}原来lock,unlock等核心方法都是通过sync来实现的。而sync其实是它的一个内部类。abstractstaticclassSyncextendsAbstractQueuedSynchronizer{...}这个内部类继
半旧518
·
2023-04-12 21:12
juc
juc
Juc
并发编程08——Condition实现源码分析
看看ReentrantLock中的newCondition方法finalConditionObjectnewCondition(){returnnewConditionObject();}再点进去发现原来就是AQS中的内部类。publicclassConditionObjectimplementsCondition,java.io.Serializable{privatestaticfinallo
半旧518
·
2023-04-12 21:12
juc
juc
JUC
学习之——ReentranLock
1.ReentranLock简介ReentranLock是自JDK1.5引入的基于API层面的互斥锁,它与sychronized有着一些异同。相同点:都是独占式的可重入锁,不同点:ReentranLock的加锁和解锁过程需要手动去控制,synchronized的加锁和解锁是通过JVM来实现的;ReentranLock可以响应中断而sychronized不可以响应中断;ReentranLock可以创
Jay-
·
2023-04-12 21:40
JUC
java
并发编程
JUC
并发编程基石——AQS深入解读
深入解读AQS源码前言 Java.util.concurrent是在并发编程中比较常用的工具类,里面包含很多用来在并发场景中使用的组件。比如ReentrantLock,Semaphore,CountDownLatch、ThreadPoolExecutor等等。并发包的作者是大名鼎鼎的DougLea。 AQS是一个用来构建锁和同步器的框架,全名AbstractQueuedSynchronizer
鲨鱼大叔
·
2023-04-12 21:04
java多线程并发
多线程
java
队列
并发编程
JUC
编程之——synchronized的底层实现与分析
1synchronized关键字synchronized是Java中的关键字,是一种同步锁(也是一种悲观锁)。它修饰的对象有以下几种:作用于实例方法,当前实例加锁,进入同步代码前要获得当前实例的锁——对象锁;作用于代码块,对括号里配置的对象加锁——对象锁;作用于静态方法,当前类加锁,进去同步代码前要获得当前类对象的锁——类锁;注:synchronized不能修饰变量;2javap指令javap是j
不存在的c
·
2023-04-12 21:29
java
jvm
开发语言
JUC
编程之——线程的start方法及底层源码
1一个小栗子简单的写一个线程的小栗子:publicclassThreadTestextendsThread{@Overridepublicvoidrun(){System.out.println("Inrun");}publicstaticvoidmain(String[]argv){(newThreadTest()).start();}}2start()方法源码分析2.1start()源码查看j
不存在的c
·
2023-04-12 21:59
jvm
java
开发语言
JUC
并发编程02——AQS源码剖析
1.AQS介绍相信每个JavaCoder都使用过或者至少听说过AQS,它是抽象队列同步器AbstractQueuedSynchronizer的简称,在
juc
包下。
程序一逸
·
2023-04-12 21:58
java
c++
jvm
JUC
编程之——线程中断机制及源码分析
1什么是中断机制一个线程不应该由其他线程中断或停止,而应该由线程自行停止——命运掌握在自己手里;所以Thread.stop、Thread.suspend、Thread.resume方法都已过时;Java中无法立即停止一个线程;Java提供了一种用于停止线程的协商机制——中断,也即中断标识协商机制;中断过程需要程序员自己实现——用线程的interrupt方法将对象的中断标识设置为true——只是温馨
不存在的c
·
2023-04-12 21:25
java
jvm
开发语言
Dubbo的线程模型、handler
本系列参考官网文档、芋道源码的
源码解读
和《深入理解ApacheDubbo与实战》一书。
就这些吗
·
2023-04-12 20:41
从Hive
源码解读
大数据开发为什么可以脱离SQL、Java、Scala
从Hive
源码解读
大数据开发为什么可以脱离SQL、Java、Scala前言【本文适合有一定计算机基础/半年工作经验的读者食用。
虎鲸不是鱼
·
2023-04-12 20:43
笔记
云计算大数据
大数据
hive
scala
java
thrift
JUC
工具类
JUC
工具类
JUC
工具类:CountDownLatch详解;CyclicBarrier详解;Semaphore详解;Phaser详解;Exchanger详解;ThreadLocal详解;1、Java中
以墨言智
·
2023-04-12 16:12
java
jvm
开发语言
JUC
集合类
1、Java中
JUC
集合有哪些?
以墨言智
·
2023-04-12 16:42
JUC
Java
阻塞队列
同步队列
三、SDWebImage
源码解读
UIImageView+WebCache
UIImageView+WebCache这个类别是我们常用到的,我相信绝大部分的程序员都看过其中的内容,直接上代码-(void)sd_setImageWithURL:(nullableNSURL*)url-(void)sd_setImageWithURL:(nullableNSURL*)urlplaceholderImage:(nullableUIImage*)placeholder-(void)
小强简书
·
2023-04-12 16:38
SpringBoot深入浅出阅读笔记(持续更新)
2021-1-07@Component
源码解读
@Retention(RetentionPolicy.RUNTIME)@Target({ElementType.TYPE})@Documented@Repeatable
渣渣港
·
2023-04-12 14:38
java
java
源码
并发编程之美-终章chat
一、Java并发编程之美:并发编程高级篇之五微信扫码二维码加入本Chat作为Java并发编程之美系列的高级篇之五,讲解
JUC
包中提供的三种线程同步器的使用与原理分析内容如下:(建议先阅读并发编程高级篇之三
阿里加多
·
2023-04-12 13:40
springboot加载命令行参数ApplicationArguments
ConditionnalOnClass的原理分析springboot项目实现导出pdf功能,这也太简单了吧目录文章目录往期文章目录一、介绍二、通过应用程序参数获取配置1.通过bean获取应用程序参数2.通过`@Value`注解获取三、
源码解读
理想万岁万万岁
·
2023-04-12 12:42
spring
源码
spring
boot
java
spring
JUC
并发编程
1.1
JUC
简介
JUC
就是java.util.concurrent工具包的简称。这是一个处理线程的工具包,JDK1.5开始出现的。
蜗牛也不慢......
·
2023-04-12 09:46
juc
高并发
高并发编程
java高并发api
JUC
并发编程系列详解篇一(基础)
同步和异步同步和异步通常来形容一次方法调用,同步方法调用一旦开始,调用者必须等到方法调用返回后,才能继续后续的行为。异步方法调用更像一个消息传递,一旦开始,方法调用就会立即返回,调用者就可以继续后续的操作。而异步方法通常会在另外一个线程中“真实”地执行。整个过程,不会阻碍调用者的工作。如图所示:图中显示了同步方法调用和异步方法调用的区别。对于调用者来说,异步调用似乎是一瞬间就完成的。如果异步调用需
淡墨@~无痕
·
2023-04-12 08:13
java基础
Java高级特性
并发编程
java
JUC
并发编程基础篇第一章之进程/并发/异步的概念[理解基本概念]
1.进程和线程的概念进程:系统正在运行的一个应用程序;程序一旦运行就是一个进程;进程是资源分配的最小单位线程:是进程的实际运行单位;一个人进程可以并发控制多个线程,每条线程并行执行不同的任务区别:进程基本上相互独立的;而线程存在于进程内,是进程的一个子集进程拥有共享的资源,如内存空间等,供其内部的线程共享进程间通信较为复杂(同一台计算机的进程通信称为IPC,不同计算机之间的进程通信,需要通过网络,
爱吃糖的靓仔
·
2023-04-12 08:10
并发编程
java
JUC
多线程:线程的中断停止
对于线程的停止,通常情况下我们是不会去手动去停止的,而是等待线程自然运行至结束,但在实际开发中,很多情况中需要我们提前去手动来停止线程,比如程序中出现异常错误、使用者关闭程序等情况中。如果不能很好地停止线程那么可能会导致各种问题,所以正确的停止线程是非常的重要的,常见的中断线程的方式有以下几种:1、方式一:使用Thread类的stop()方法来终止线程:Thread类的stop()方法虽然可以终止
张维鹏
·
2023-04-12 07:50
Java核心编程技术
java
多线程
线程的终止
interrupt
面试
JUC
-多线程(11.面试问题简析)学习笔记
文章目录1.synchronized关键字底层原理以及其与lock的区别2.对CAS的理解以及底层实现原理3.ConcurrentHashMap实现线程安全的底层原理是什么4.对JDK中的AQS了解吗?AQS的实现原理是什么?5.线程池的核心配置参数是干什么的?应该怎么用?6.线程池的底层工作原理7.如果在线程池中使用无界阻塞队列会发生什么问题?等同于问,在远服务异常的情况下,使用无界阻塞队列,是
yuan_404
·
2023-04-12 07:19
多线程
面试
学习
jvm
多线程
JUC
(java.util.concurrent) 的常见类
文章目录前言一.ReentrantLock二.原子类三.信号量Semaphore四.CountDownLatch五.Callable接口前言一.ReentrantLockReentrantLock是Java中一个提供同步机制的类,用于控制对共享资源的访问。它实现了Lock接口,提供了一组方法来获取和释放共享资源的锁.从这里可以看出来reentrantLock和Synchronized在功能上是不是
忘忧记
·
2023-04-12 05:13
多线程
java
pytorch关系抽取框架OpenNRE
源码解读
与实践:PCNN ATT
pytorch关系抽取框架OpenNRE
源码解读
与实践:PCNNATT0前言1OpenNRE整体架构2PCNN+ATT模型架构2.1PCNNEncoder2.2BagAttention结语参考资料0前言
老胡nlp
·
2023-04-12 04:19
关系抽取论文阅读笔记
OpenNRE源码解读与实践
深度学习
人工智能
自然语言处理
pytorch
nlp
PostgreSQL
源码解读
(30)- 查询语句#15(查询优化-扁平化处理UNION ALL)
本文简单介绍了PG查询优化中对顶层UNIONALL语句进行的扁平化(flatten)处理过程。扁平化处理的目的是把UNIONALL的集合操作转换为AppendRelation以进行优化处理。一、测试脚本测试脚本:testdb=#selecta.dwbhfromt_dwxxaunionallselectb.dwbhfromt_grxxbunionallselectc.grbhfromt_jfxxc;
EthanHe
·
2023-04-12 03:10
源码解读
RunLoop,理解以后面试必加分
继上一篇博客中高级iOS必备知识点之RunLoop(一)继续介绍RunLoop的状态首先我们去RunLoop的源码去查看它有几种状态,如下图:它一共有上面的这几种个状态/*RunLoopObserverActivities*/typedefCF_OPTIONS(CFOptionFlags,CFRunLoopActivity){kCFRunLoopEntry=(1UL<<0),//即将进入loopk
GDCoder
·
2023-04-12 01:25
Android 架构之OkHttp
源码解读
(上)
前言在我们编写Android程序时,OkHttp已经成为了我们必不可少的部分,但我们往往知道OkHttp怎么用,不知其原理。在本篇中,我将通过如下方式带你深入其原理。OkHttp介绍OkHttp调用流程socket连接池复用机制高并发请求队列:任务分发责任链模式拦截器设计【Android源码解析】Android中高级架构进阶学习——百大框架源码解析Retrofit/OkHttp/Glide/RxJ
我爱田Hebe
·
2023-04-12 01:58
spring-Kafka中的@KafkaListener深入
源码解读
目录前言一、总体流程二、
源码解读
1、postProcessAfterInitialization1.1、processKafkaListener1.2、processListener1.3、registerEndpoint1.4
·
2023-04-12 01:37
第六章 数据中台PaaS层离线存储之HDFS源码剖析第一部分 - NameNode启动流程&HadoopRpc协议详述
1、大数据
源码解读
思路(1)掌握其网络通信架构(2)场景驱动方式HDFS:namenodedatanode启动写数据得流程更新原数据流程读数据流程2、HadoopRPC的Demo详述含义:远程过程调用,
随缘清风殇
·
2023-04-11 23:01
大数据架构师专题
hbase
big
data
数据库
JUC
部分需要深究的知识点
1、JAVA构建线程的所有方式通过继承Thread类创建线程。这种方式需要定义一个子类,继承Thread类,并重写run()方法,然后创建子类的对象,并调用start()方法启动线程。代码示例://定义一个子类,继承Thread类classMyThreadextendsThread{//重写run()方法@Overridepublicvoidrun(){//线程要执行的逻辑System.out.p
我乃cv大师
·
2023-04-11 21:53
java
jvm
开发语言
Springboot
源码解读
1.解读源码的意义:为什么要解读源代码?直接使用别人封装好的框架不香吗?答案如下:随着互联网的快速发展,加上java跨平台等强大特性,导致java程序员需求日益剧增,很多高校、培训机构都为了填补市场需求,大批量的培养java程序员,导致很多java程序员只知其然,不知其所以然。java程序员有种饱和的趋势!!!加上疫情的原因,很多中小型公司的收入大幅下降,他们可能选择缩招或者裁员,很多只会写增删改
码上编程
·
2023-04-11 21:12
后端java
java
spring
spring
boot
PostgreSQL
源码解读
(67)- 查询语句#52(make_one_rel函数#17-merge join#2)
本节大体介绍了动态规划算法实现(standard_join_search)中的join_search_one_level->make_join_rel->populate_joinrel_with_paths->add_paths_to_joinrel->sort_inner_and_outer中的initial_cost_mergejoin和final_cost_mergejoin函数,这些函数
EthanHe
·
2023-04-11 20:55
多线程进阶=》
JUC
并发编程
多线程进阶=》
JUC
并发编程1、什么是
JUC
JUC
是java.util.concurrent的简写。用中文概括一下,
JUC
的意思就是java并发编程工具包。并发编程的本质就是充分利用CPU资源。
睡过了车站
·
2023-04-11 19:21
java
juc
多线程
京东金融云测平台方案揭秘
本文作者:京东数科薛亚斌文章来源:“京东数科技术说”微信公众号原文链接:https://mp.weixin.qq.com/s/oxy1SKs
jUC
ZIgjjKO7OiGg.更多技术干货欢迎关注“京东数科技术说
京东云技术团队
·
2023-04-11 17:58
测试
测试工程师
juc
笔记前篇
JUC
本篇章是边学习边记录尚硅谷周阳老师的
juc
视频写下来的笔记前篇后篇1.前置概念复习start线程publicstaticvoidmain(String[]args)throwsInterruptedException
小胡のbug生产记录
·
2023-04-11 14:53
笔记
java
涵盖15个技术点:这份Java高并发核心编程文档(卷一二都有)是Java卷王的都来学,涨薪10K+都是小问题~
前言主要包含的内容:JavaNIO、Reactor模式、高性能通信框架Netty、分布式锁、分布式ID、分布式缓存、高并发架构、多线程、线程池、内置锁、JMM、CAS、
JUC
、高并发设计模式。
ikt4435
·
2023-04-11 14:14
Java
编程
程序员
java
面试
jvm
JUC
- 并发编程
第一章、基础一、基础入门1.传统线程使用-卖票业务传统的项目使用线程举例:卖票业务代码如下:/***@authorbyChen*@date2022/8/11*/@RestController@RequestMapping("/thread1")@AllArgsConstructorpublicclassThreadDemo1{/***为了方便,在此处定义实体类*根据返回状态,来判断没有票了,就不会
Adda_Chen
·
2023-04-11 14:43
java
JUC
并发编程第二章之CompletableFuture[加强版的线程]
文章目录1、创建线程的几种方式2、线程之间的通讯方式2.1、什么是多线程之前的通讯2.2、线程讯通之间的问题演示2.3、synchronized解决讯通问题2.4、wait()、notify()解决讯通问题2.5、Lock,Condtion解决讯通问题2、Future的优缺点3、CompletableFuture对Future的改进3.1、CompletableFuture的基本结构3.2、创建C
爱吃糖的靓仔
·
2023-04-11 14:42
并发编程
java
Golang之Gin框架
源码解读
——第二章
Gin是使用Go语言编写的高性能的web服务框架,根据官方的测试,性能是httprouter的40倍左右。要使用好这套框架呢,首先我们就得对这个框架的基本结构有所了解,所以我将从以下几个方面来对Gin的源码进行解读。第一章:Gin是如何储存和映射URL路径到相应的处理函数的第二章:Gin中间件的设计思想及其实现第三章:Gin是如何解析客户端发送请求中的参数的第四章:Gin是如何将各类格式(JSON
Dask Jhonson
·
2023-04-11 13:11
Golang
#
Gin源码解读
中间件
go
web
Golang之Gin框架
源码解读
——第三章
Gin是使用Go语言编写的高性能的web服务框架,根据官方的测试,性能是httprouter的40倍左右。要使用好这套框架呢,首先我们就得对这个框架的基本结构有所了解,所以我将从以下几个方面来对Gin的源码进行解读。第一章:Gin是如何储存和映射URL路径到相应的处理函数的第二章:Gin中间件的设计思想及其实现第三章:Gin是如何解析客户端发送请求中的参数的第四章:Gin是如何将各类格式(JSON
Dask Jhonson
·
2023-04-11 13:11
Golang
#
Gin源码解读
中间件
go
web
juc
常用类: CountDownLatch、CyclicBarrier、Semaphore
CountDownLatchCountDownLatch是计数器,作用是阻塞主线程,直到若干子线程都执行完毕,再继续执行主线程,比如阻塞餐厅的服务员(不让他开门),等到所有顾客都赶到了(顾客是子线程,赶路是线程的操作),服务员才开门。CyclicBarrierCyclicBarrier是循环栅栏,作用是:一个或多个线程都执行完一部分操作后,再一起执行另一部分操作,比如所有顾客都赶到餐厅后,服务员才
修行者12138
·
2023-04-11 11:13
上一页
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
其他