首页
AI Coding
数据标注
NEW
沸点
课程
直播
活动
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
java
订阅
jhwong22688
更多收藏集
微信扫码分享
微信
新浪微博
QQ
8篇文章 · 0订阅
并发编程(5)ThreadPoolExecutor原理解析
由于线程的创建跟销毁是比较消耗资源的,也是比较耗时的。可能为了程序的需要,我们会创建很多线程,所以很有必要对线程进行一个统一的管理,所以就出现了线程池。通过线程池,我们可以重复利用一些线程资源,同时可以统一管理应用内的线程,防止内存泄露。 1.判断核心线程池里的线程是否都在执行…
你应该知道的高性能无锁队列Disruptor
听到队列相信大家对其并不陌生,在我们现实生活中队列随处可见,去超市结账,你会看见大家都会一排排的站得好好的,等待结账,为什么要站得一排排的,你想象一下大家都没有素质,一窝蜂的上去结账,不仅让这个超市崩溃,还会容易造成各种踩踏事件,当然这些事其实在我们现实中也是会经常发生。 当然…
JVM分析工具概述
M:表示元空间,不再虚拟机中,而是使用本地内存。 打印正等候回收的对象的信息。 打印classload的信息。包含每个classloader的名字、活泼性、地址、父classloader和加载的class数量 打印classload的信息。包含每个classloader的名字、…
JVMTI Agent 工作原理及核心源码分析
在JVM启动时,会读取JVM命令行参数 -agentlib -agentpath -javaagent,并构建了Agent Library链表。初始化 Agent 代码如下: 在方法Agent_OnLoad中创建一个新的 JPLISAgent(Java Programming …
重拾后端之Spring Boot(一):REST API的搭建可以这样简单
重拾后端之Spring Boot(一):REST API的搭建可以这样简单 重拾后端之Spring Boot(二):MongoDb的无缝集成 重拾后端之Spring Boot(三):找回熟悉的Controller,Service 重拾后端之Spring Boot(四):使用 JW…
如果有人给你撕逼Java内存模型,就把这些问题甩给他
JVM内存模型(JMM)是并发的基础,要是想扎实的理解并发原理,那么就必须对JMM有比较深刻的认识。相信大部分朋友都有所了解了。这两天回顾了一下相关内容,在琢磨怎么才能更加直观的表达出这个内存模型,并且对这个模型有比较深刻的认识。刚好最近想做做动画,所以打算练练手尝试下以动画的…
再有人问你Java内存模型是什么,就把这篇文章发给他
前几天,发了一篇文章,介绍了一下JVM内存结构、Java内存模型以及Java对象模型之间的区别。有很多小伙伴反馈希望可以深入的讲解下每个知识点。Java内存模型,是这三个知识点当中最晦涩难懂的一个,而且涉及到很多背景知识和相关知识。 网上有很多关于Java内存模型的文章,在《深…
Synchronized锁在Spring事务管理下,为啥还线程不安全?
简单来说:多线程跑一个使用synchronized关键字修饰的方法,方法内操作的是数据库,按正常逻辑应该最终的值是1000,但经过多次测试,结果是低于1000。这是为什么呢? 既然测试出来的结果是低于1000,那说明这段代码不是线程安全的。不是线程安全的,那问题出现在哪呢?众所…