Java面试
文章平均质量分 55
zhangdingxin12138
这个作者很懒,什么都没留下…
展开
-
Redis面试
Redis使用单线程的多路IO复用模型。多个socket可能会并发产生不同的操作,IO多路复用程序监听多个socket,将产生的事件放入队列中排队,事件分派器每次用队列中取出一个事件,交给对应的事件处理器处理String,List,Hash,Set,ZSet 端口号:6379过期时间:定期删除:每隔100ms随机抽取设置了过期时间的key,检查是否过期惰性删除:查询key时,检查是否过期,然后删除内存淘汰:如果定期删除没删除掉,还未进行惰性删除,redis在内存耗尽后会出发内存淘汰原创 2021-10-18 16:24:24 · 109 阅读 · 0 评论 -
计算机网络面试复习
计算机网络1.三次握手第一次客户端发送syn向服务端,第二次服务端返回ack和syn到客户端,第三次客户点返回ack。三次握手的目的就是为了建立可靠的通信信道,经过三次握手,双方都可以确认自己和对方的发送和接收是正常的。第二次握手服务端返回syn即告诉客户端,我接受的消息确实是你发送给我的。2.四次挥手第一次,主动关闭方发送一个fin到被动关闭方,用来告知自己想关闭信道第二次,被动方返回ack,确认收到主动关闭方信息。但是此时被动关闭方可能还有消息没有传完第三次,被动方消息传完后,发送fin原创 2021-10-15 20:06:46 · 412 阅读 · 0 评论 -
操作系统面试题总结
1. 什么是操作系统操作系统是运行在计算机上的软件程序,管理计算机硬件和软件资源,屏蔽了硬件层的复杂性。2.系统调用进程在运行时可以分为两个级别:用户态和内核态。正常的应用都运行在用户态,凡是跟内核态资源有关的操作,都必须通过系统调用,由操作系统代为完成。3.进程和线程的区别一个进程可以划分成多个线程,进程之间相互独立,线程之间可能会相互影响。线程不利于资源的管理和维护。Java中,堆线程共享,栈线程私有。4.进程的状态创建、就绪、运行、阻塞、结束就绪状态的线程被插队后,依然处于就绪状态。原创 2021-10-14 14:13:03 · 101 阅读 · 0 评论 -
Volatile
volatile是什么?volatile是Java虚拟机提供的轻量级的同步机制1.1 保证可见性1.2 不保证原子性1.3 禁止指令重排JMM是什么?JMM(Java内存模型Java Memory Model,简称JMM)本身是一种抽象的概念 并不真实存在,它描述的是一组规则或规范通过规范定制了程序中各个变量(包括实例字段,静态字段和构成数组对象的元素)的访问方式。JMM关于同步规定:线程解锁前,必须把共享变量的值刷新回主内存线程加锁前,必须读取主内存的最新值到自己的工作内存加锁解原创 2021-03-23 16:24:26 · 123 阅读 · 2 评论 -
Singleton 单例模式(JAVA)
//Singleton 单例模式//饿汉式:直接创建对象,不存在线程安全问题//(1)构造器私有化//(2)自行创建,并且使用静态变量保存//(3)向外提供这个实例//(4)强调这是一个单例,可以使用final修饰//1.直接实例化饿汉式(简洁直观),不管你是否需要这个对象public class Singleton{ public static final Singleton INSTANCE = new Singleton(); private Singleto原创 2021-03-23 22:02:52 · 106 阅读 · 0 评论