- 博客(4)
- 问答 (1)
- 收藏
- 关注
翻译 笔记:标记-复制算法
以下内容来自《深入理解JVM虚拟机第三版》,仅做笔记使用: 1、什么时候使用标记-复制算法 由于新生代对象具有朝生夕死的特点,所以大部分新生代收集器选择使用标记-复制算法(因为仅复制存活对象,而新生代每次标记的存活对象是很少的)。 2、算法的具体实施 在算法的具体实施上,HotSpot虚拟机的Serial、ParNew等新生代收集器把新生代分为一块较大的Eden空间和两块较小的 Survivor空间,每次分配内存只使用Eden和其中一块Survivor。发生垃圾收集时,将Eden和Survivor中仍然存活
2021-11-25 15:39:36 577
原创 Spring的Event事件通知/监听
Spring的事件通知/监听一、为什么要使用事件通知/监听2、spring的事件监听示例 一、为什么要使用事件通知/监听 现在有如下业务场景: 用户A订购了某件商品,按照业务流程,完成订购后,还需要发送成功订购的短信、邮件。一般我们会在用户订购的服务中,完成用户订购操作,然后调用发送短信的服务和发送邮件的服务,完成一整套订购流程。 这样的代码耦合性非常强,因为随着业务的扩展、变化,可能订购完成了还会增加新的事件,比如增加积分。按照传统的写法,我们就要在订购服务中再调用积分的服务。 那么,如何将这些高耦合的代
2020-09-22 11:16:04 950
原创 JAVA的几种引用:强引用、软引用、弱引用、虚引用
JAVA的几种引用:强引用、软引用、弱引用、虚引用1、强引用2、软引用3、弱引用4、虚引用 1、强引用 强引用就是代码里写的Object obj=new Object() 只要强引用存在,垃圾收集器就不会回收被引用的对象。 当JVM内存空间不足,JVM宁愿抛出OutOfMemoryError运行时错误,使程序异常终止,也不会靠随意回收具有强引用的“存活”对象来解决内存不足的问题。 2、软引用 下面展示一段软引用代码。 //这里是强引用 Sample sample = new Sample(); //so
2020-09-17 15:51:48 1407
原创 IO模型详解:BIO、NIO、IO多路复用、AIO
IO模型详解:BIO、NIO、IO多路复用、AIO一、IO读写底层原理二、阻塞/非阻塞,同步/异步1、什么是阻塞/非阻塞2、什么是同步/异步三、四种IO模型详解1、同步阻塞IO(BIO) 一、IO读写底层原理 在详细了解IO模型之前,首先要先说明IO读写的原理。 我们的JAVA程序进行IO的读写时,是依赖底层的IO读写的,也就是要与操作系统底层做交互。读写并不是发送read/write指令就直接把数据从物理设备读到内存里。我们程序的IO操作,其实并非物理设备的读写,而是缓存的读写。 我们的程序有进程缓冲区,
2020-09-17 10:50:04 625
空空如也
关于数据库逐条新增和逐条更新选择的问题
2021-11-23
TA创建的收藏夹 TA关注的收藏夹
TA关注的人