摘要: 1. Object的方法,9大方法 public final native Class<?> getClass(); 返回 运行时对象的类别 public native int hashCode(); 返回 这个对象的一个 hash code public boolean equals(Object 阅读全文
posted @ 2022-04-13 11:05 CrazyShanShan 阅读(49) 评论(0) 推荐(0) 编辑
摘要: Java中一共有4种引用类型,分别为: 强引用 软引用 弱引用 虚引用 1. 强引用 M m = new M(); m = null; System.gc(); 这个m指向M()内存对象的引用就是一个强引用。 2. 软引用 SoftReference<byte[]> m = new SoftRefe 阅读全文
posted @ 2022-04-06 11:18 CrazyShanShan 阅读(222) 评论(0) 推荐(0) 编辑
摘要: 1. 为什么会出现循环依赖 AServiceProxy.target = 普通对象 AService Bean的生命周期: creatingSet<'AService'> 推断构造方法,进行实例化 普通对象 --> 放入三级缓存 singletonFactories.put("AService", 阅读全文
posted @ 2022-03-30 20:58 CrazyShanShan 阅读(58) 评论(0) 推荐(0) 编辑
摘要: Bean创建的生命周期 UserService.class --> 推断构造方法 > 1. 判断使用哪一个构造方法 > 2. 判断构造方法有没有入参 > 1. 没有入参 > 2. 有入参 先ByType,再ByName 尝试去找,先找Type,看看找到了几个 1. 找到一个,那么就是这个 2. 找到 阅读全文
posted @ 2022-03-30 19:33 CrazyShanShan 阅读(232) 评论(0) 推荐(0) 编辑
摘要: 分布式应用进行逻辑处理时经常会遇到并发问题。 Redis分布式锁使用得非常广泛。 1. 分布式锁奥义 分布式锁的本质上是要在Redis里面占一个坑,当别的进程要来占坑,发现那里已经有一个坑了,就只好放弃,或者稍后再试。 占坑一般使用setnx命令,只允许一个客户端占坑。先来先占,用完了,再调用del 阅读全文
posted @ 2022-03-26 23:06 CrazyShanShan 阅读(41) 评论(0) 推荐(0) 编辑
摘要: 字符串 和java中的ArrayList的实现类似。 动态字符串实现,采用预分配冗余空间的方式来减少内存的频繁分配。 扩容:字符串长度小于len的时候,扩容都是加倍现有的空间。如果字符串长度超过1MB,扩容一次增加1MB,字符串的最大长度为512MB。 字符串由多个字节组成,每个字节又由8bit组成 阅读全文
posted @ 2022-03-26 22:40 CrazyShanShan 阅读(738) 评论(0) 推荐(0) 编辑
摘要: Java内存模型(JMM) 常说的JVM内存模型指的是JVM的内存分区; JAVA内存模型是一种虚拟机规范。 Java虚拟机规范中定义了Java内存模型, 用于屏蔽各种硬件和操作系统的内存访问差异,以实现让Java程序在各种平台下都能达到一致的并发效果。 JMM 规范规定了Java虚拟机和计算机内存 阅读全文
posted @ 2022-03-26 16:46 CrazyShanShan 阅读(121) 评论(0) 推荐(0) 编辑
摘要: MESI: 为了保证多个CPU核之间的缓存行中对应主存的数据的一致性。 缓存行的4个状态 M: Modified 代表该缓存行中的内容被修改了,并且该缓存行只被缓存在该CPU中。 并且 这个状态的缓存行中的数据和内存中的不一样,在未来的某个时刻它会被写入到内存中 E: Exclusive E代表该缓 阅读全文
posted @ 2022-03-26 16:30 CrazyShanShan 阅读(242) 评论(0) 推荐(0) 编辑
摘要: TCP 流量控制 一条TCP连接的每一侧主机都为该连接设置了接收缓存。 当TCP连接收到正确、按序的字节后,它就将数据放入接收缓存。 相关联的应用进程会从该缓存中读取数据,但不必是数据刚一到达就立即读取。 TCP为它的应用程序提供流量控制服务,以消除发送方使接收方应用缓存溢出的可能性。 假设TCP接 阅读全文
posted @ 2022-03-25 19:19 CrazyShanShan 阅读(92) 评论(0) 推荐(0) 编辑
摘要: TCP连接的建立 假设一个客户上的一个进程想和另一台主机上的一个进程建立一条连接。 客户的应用进程首先通知客户TC片,它想建立一个与服务器上某个进程之间的连接。 客户的TCP会用以下方式与服务器中的TCP建立一条TCP连接: 客户端的TCP首先像服务器端的TCP发送一个特殊的TCP报文段。该报文段中 阅读全文
posted @ 2022-03-25 16:49 CrazyShanShan 阅读(404) 评论(0) 推荐(0) 编辑
点击右上角即可分享
微信分享提示