摘要: java中有四种引用类型,分别是 强引用 强引用也就是我们通常认为的java中的中的引用关系 通过new创建一个对象,然后赋值给一个变量,这个时候这个变量指向堆中地址的引用就是一个强引用 他收到JVM的管理,当JVM发生GC的时候,如果有强引用指向了空的话,那么这个时候GC就会对这类对象进行进行回收 阅读全文
posted @ 2020-08-05 14:31 colin_xun 阅读(177) 评论(0) 推荐(0) 编辑
摘要: 概念 指针和引用 首先java中没有指针的概念,但是在c++中是有指针(*)和引用(&)的概念的,不太好区分,但是以swap方法为例的话,两者都可以达到交换的目的。为了更好的区分我先设定 指针:直接指向了数据,所有的修改都是直接对数据的修改(但其实指针也是一个对象,里面的值存放了数据的地址) 引用: 阅读全文
posted @ 2020-04-07 22:44 colin_xun 阅读(270) 评论(0) 推荐(0) 编辑
摘要: 什么是JNI 听说了 JNI → 想学 → 自己做实验,发现确实快 → 想深入学习 → Google → 发现文章只有一点点 → 看完了,全是垃圾 → 找官文/爆栈/上知乎提问 → 自己踩坑 → 顺便学了一堆附加技能,比如 Rust/定制JVM 等 → 想写教程,发现内容太多,又懒 → 放弃写教程, 阅读全文
posted @ 2019-10-31 18:15 colin_xun 阅读(767) 评论(0) 推荐(1) 编辑
摘要: public class Test { public int getX() { int x; try { x = 7; return x; } catch (Exception e) { x = 8; return x; } finally { x = 9; // 接下来看注释与不注释的区别 ret 阅读全文
posted @ 2019-10-31 17:58 colin_xun 阅读(691) 评论(0) 推荐(0) 编辑
摘要: 在深入理解volatile关键字的过程中,出现了一些之前没有了解到的知识点,而这些知识点有影响着我对volatile的认知,下面就对这些知识点做一些梳理 #MESI是什么 为了解决速度不匹配问题,计算机中多处使用到了缓存。为了解决CPU和内存的速度不匹配问题,出现了高速缓存。在多核CPU的计算机中, 阅读全文
posted @ 2019-09-19 15:34 colin_xun 阅读(152) 评论(0) 推荐(0) 编辑
摘要: #问题 ##问题1:计算机中读写数据的流程是什么?数据走向是什么样的 操作系统主要的设计原则:使用方便,高效工作 CPU是和内存间接交互,还是和磁盘直接交互 DMA(Direct Memory Access,直接内存存取) 是所有现代电脑的重要特色,它允许不同速度的硬件装置来沟通,而不需要依于CPU 阅读全文
posted @ 2019-09-02 18:33 colin_xun 阅读(385) 评论(0) 推荐(0) 编辑
摘要: ##BytetBuf ByteBuf就是JDK nio中Buffer的新轮子 buffer 的主要目的进行流量整形,把突发的大数量较小规模的 I/O 整理成平稳的小数量较大规模的 I/O,以减少响应次数 ByteBuffer: 长度固定,一旦分配完成,它的容量不能动态扩展和收缩,当需要编码的POJO 阅读全文
posted @ 2019-08-28 10:38 colin_xun 阅读(543) 评论(0) 推荐(0) 编辑
摘要: ##线程模型 传统线程模型 采用阻塞IO模型,一个链接一个线程 问题: 当并发过多,创建大量线程会造成资源的大量占用 连接建立后,很可能一直阻塞在等待读和写的状态 Reactor模型(反应堆模型)/Dispatcher模型(分发模式) Reactor 模式,是指通过一个或多个输入同时传递给服务处理器 阅读全文
posted @ 2019-08-28 10:35 colin_xun 阅读(1486) 评论(0) 推荐(0) 编辑
摘要: 首先需要区分几个概念 非阻塞I/O,字符转换,缓冲以及通道 从JDK 7版本开始,Java新加入的文件和网络io特性称为nio2(new io 2, 因为jdk1.4中已经有过一个nio了),包含了众多性能和功能上的改进,其中最重要的部分,就是对异步io的支持,称为Java AIO(asynchro 阅读全文
posted @ 2019-08-28 10:26 colin_xun 阅读(214) 评论(0) 推荐(0) 编辑
摘要: 动态增删Controller 1、方式一:注册一个Controller中的指定方法 ​ 在spring4.0以后,spring官方已经提供了动态注册删除controller,我们直接代码演示 @Component public class MappingService { @Autowired pr 阅读全文
posted @ 2019-03-21 18:14 colin_xun 阅读(6253) 评论(0) 推荐(1) 编辑