目前的常用的IO复用模型有三种:select,poll,epoll。(1)select==>时间复杂度O(n) 它仅仅知道了,有I/O事件发生了,却并不知道是哪那几个流(可能...
目前的常用的IO复用模型有三种:select,poll,epoll。(1)select==>时间复杂度O(n) 它仅仅知道了,有I/O事件发生了,却并不知道是哪那几个流(可能...
1.同步与异步同步和异步关注的是消息通信机制 (synchronous communication/ asynchronous communication) 所谓同步,就是在...
一、IO模型的知识JAVA BIO:同步并阻塞,服务器实现模式为一个连接一个线程,即客户端有连接请求时服务器端就需要启动一个线程并处理,如果这个连接不做任何事情会造成不必要的...
双亲委派模式的工作原理:如果一个类加载器收到了类加载请求,它并不会自己先去加载,而是把这个请求委托给父类的加载器去执行如果父类加载器还存在其父类加载器,则进一步向上委托,依次...
-Xms2g:初始化推大小为 2g;-Xmx2g:堆最大内存为 2g;-XX:NewRatio=4:设置年轻的和老年代的内存比例为 1:4;-XX:SurvivorRatio...
类经过javac编译后,生成.class文件保存下来,然后经过类加载器加载类至内存,生成java.lang.Class类的实例,这个实例就是程序访问这个类的入口,通过这个cl...
堆内存划分为 Eden、Survivor 和 Tenured/Old 空间 Minor GC 从年轻代空间(包括 Eden 和 Survivor 区域)回收内存被称为 Min...
set方法需要首先获得当前线程对象Thread; 然后取出当前线程对象的成员变量ThreadLocalMap; 如果ThreadLocalMap存在,那么进行KEY/VALU...
在Java并发场景中,会涉及到各种各样的锁如公平锁,乐观锁,悲观锁等等,这篇文章介绍各种锁的分类:公平锁/非公平锁 ;可重入锁;独享锁/共享锁;乐观锁/悲观锁;分段锁;自...
有时候会有人问你, 内存泄漏是什么? 什么原因导致的? 如何解决? 那么内存溢出又是什么呢? 内存溢出 out of memory: 是指程序员在申请内存时,没有足够的内存空...
基础 1.1 JDK、 JRE、JVM 的关系是什么? 什么是 JVM ? 英文名称 ( Java Virtual Machine ),就是 JAVA 虚拟机, 它只识别 ....
类加载共有以下步骤,如图: 1.加载: 把class文件读入虚拟机,转换成为运行时数据结构,也就是InstanceClass,InstanceClass是C++实现的JVM中...
垃圾回收算法、回收机制与总结 ---JVM 一、垃圾回收算法 1.标记清除 标记--清除算法将垃圾回收分为两个阶段:标记阶段和清除阶段。 在标记阶段首先通过根节点(GC Ro...
final 在 Java 中有什么作用? 1、final修饰类:表示该类不能被继承 使用final修饰类的目的简单明确: 表明这个类不能被继承。当程序中有永远不会被继承的类时...
什么是中间件?估计很多程序猿都不太清楚中间件,那我今天就来说下中间件是什么,怎么来的。 中间件的起源 2.1 中间件发展的历史 事情从1946年说起,世界上第一台电子计算机埃...
60、请说出与线程同步以及线程调度相关的方法。答: wait():使一个线程处于等待(阻塞)状态,并且释放所持有的对象的锁; sleep():使一个正在运行的线程处于睡眠状态...
1、面向对象的特征有哪些方面?答:面向对象的特征主要有以下几个方面: 抽象:抽象是将一类对象的共同特征总结出来构造类的过程,包括数据抽象和行为抽象两方面。抽象只关注对象有哪些...
不属于。 Java 中 8 种基础的数据类型:byte、short、char、int、long、float、double、boolean 但是 String 类型却是最常用到...
如下4种方法并一一说明! StringBuilder(str).reverse()char[]循环与值交换byte循环与值交换apache-commons-lang3 Apa...
不对,两个对象的 hashCode()相同,equals()不一定 true。