首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
Java高级知识
订阅
抓住惊鱼的熊
更多收藏集
微信扫码分享
微信
新浪微博
QQ
18篇文章 · 0订阅
图解ConcurrentHashMap
Concurrent翻译过来是并发的意思,字面理解它的作用是处理并发情况的 HashMap,在介绍它之前先回顾下之前的知识。通过前面两篇学习,我们知道多线程并发下 HashMap 是不安全的(如死循环),更普遍的是多线程并发下,由于堆内存对于各个线程是共享的,而 HashMap…
Java中9种常见的CMS GC问题分析与解决(下)
1. 写在前面 | 本文主要针对 Hotspot VM 中“CMS + ParNew”组合的一些使用场景进行总结。重点通过部分源码对根因进行分析以及对排查方法进行总结,排查过程会省略较多,另外本文专业术语较多,有一定的阅读门槛,如未介绍清楚,还请自行查阅相关材料。 | 总字数 …
Java反射机制
Java放射机制是指在==运行状态==中,对于任意一个类,都能知道这个类的所有属性和方法;对于任意一个对象,都能调用它的任意一个方法和属性;这种动态获取信息及动态调用方法的功能成为Java的反射机制。 利用Java机制,在Java程序中可以动态的去调用一些protected甚至…
【备战春招系列】最全并发编程面试真题解析,教你如何吊打面试官
作打断,要么就全部都不执行。 线程可以立即看到修改的结果。 有序性,即程序的执行顺序按照代码的先后顺序来执行。 synchronized 或者 Lock:保证同一个时刻只有一个线程获取锁执行代码,锁释放之前把最新的值刷新到主内存,实现可见性。 多线程,可以真正发挥出多核 CPU…
阿里面试官都爱问的内存管理和GC算法及回收策略
Sun的JVMGenerationalCollecting(垃圾回收)原理是这样的:把对象分为年青代(Young)、年老代(Tenured)、持久代(Perm),对不同生命周期的对象使用不同的算法。(基于对对象生命周期分析) 年轻代分三个区。一个Eden区,两个Survivor…
重学Java-一个Java对象到底占多少内存
文章标题提出的问题是”一个对象到底占多少内存“,看似很简单,但想说清楚并不容易,希望本文的探讨能让你有收获。 在开始之前我还是决定先提一个曾经阴魂不散,困扰我很久的问题,了解这个问题的答案有助于我们理解接下来的内容。 在Java中数据类型分为二大类。 Java中基础数据类型有8…
如何优雅关闭 Spring Boot 应用
随着线上应用逐步采用 SpringBoot 构建,SpringBoot应用实例越来多,当线上某个应用需要升级部署时,常常简单粗暴地使用 kill 命令,这种停止应用的方式会让应用将所有处理中的请求丢弃,响应失败。这样的响应失败尤其是在处理重要业务逻辑时需要极力避免的,那么有什么…
图解 Java 线程安全
按操作系统中的描述,线程是 CPU 调度的最小单元,直观来说线程就是代码按顺序执行下来,执行完毕就结束的一条线。 举个 🌰,富土康的一个组装车间相当于 CPU ,而线程就是当前车间里的一条条作业流水线。为了提高产能和效率,车间里一般都会有多条流水线同时作业。同样在我们 And…
Java多线程-线程池的创建使用与源码拓展
多线程的设计方法确实可以最大限度的发挥多核处理器的计算能力,提高吞吐量和性能。但是如果不加控制随意使用线程,对系统的性能反而会产生不利。 和进程相比,线程虽然是一种轻量级的,但是创建和关闭依然需要花费时间,如果每一个小的任务都创建一个线程,则会很有可能出现创建和销毁线程占用的时…
SpringBoot 下 Mybatis 的缓存
说起 mybatis,作为 Java 程序员应该是无人不知,它是常用的数据库访问框架。与 Spring 和 Struts 组成了 Java Web 开发的三剑客--- SSM。当然随着 Spring Boot 的发展,现在越来越多的企业采用的是 SpringBoot + myb…