排序
wait和sleep的区别
共同点 wait() ,wait(long) 和 sleep(long) 的效果都是让当前线程暂时放弃 CPU 的使用权,进入阻塞状态 不同点 方法归属不同 sleep(long) 是 Thread 的静态方法 而 wait(),wait(long) 都是 Ob...
分代收集算法工作机制
概述 在java8时,堆被分为了两份:新生代和老年代【1:2】,在java7时,还存在一个永久代。 对于新生代,内部又被分为了三个区域。Eden区,S0区,S1区【8:1:1】 当对新生代产生GC:MinorGC【y...
Java编程中的精确浮点数处理:四舍五入保留两位小数
在日常的Java编程过程中,我们经常会遇到需要对浮点数进行处理的情况。 在这些处理过程中,四舍五入保留两位小数是一种非常常见的需求。 本文将详细介绍如何在Java中实现这一功能。 数字格式化...
Java的I/O演进之路
在Java的软件设计开发中,通信架构不可避免,我们在进行不同系统或者不同进程之间的数据交互,或者在高并发下的通信场景下都需要用到网络通信相关的技术,对于一些经验丰富的程序员来说,Java早...
什么是类加载器,有哪些种类?
要想理解类加载器的话,务必要先清楚对于一个Java文件,它从编译到执行的整个过程。 类加载器:用于装载字节码文件(.class文件) 运行时数据区:用于分配存储空间 执行引擎:执行字节码文件或本...
什么是虚拟机栈?
Java Virtual machine Stacks (java 虚拟机栈) 每个线程运行时所需要的内存,称为虚拟机栈,先进后出 每个栈由多个栈帧(frame)组成,对应着每次方法调用时所占用的内存 每个线程只能有一个活...
常见线程池类型与应用场景
在java.util.concurrent.Executors类中提供了大量创建连接池的静态方法,常见就有四种。 创建使用固定线程数的线程池 public static ExecutorService newFixedThreadPool(int nThreads) { retur...
线程池的7大核心参数有哪些
七大参数 corePoolSize 核心线程数目 - 池中会保留的最多线程数 maximumPoolSize 最大线程数目 - 核心线程+救急线程的最大数目 keepAliveTime 生存时间 - 救急线程的生存时间,生存时间内没有新...












