java
jaaawaaa
这个作者很懒,什么都没留下…
展开
-
Java多线程实现交替打印(Condition)
【代码】Java多线程实现交替打印(Condition)原创 2024-01-26 14:57:02 · 109 阅读 · 0 评论 -
Java多线程实现交替打印(LockSupport)
【代码】Java多线程实现交替打印(LockSupport)原创 2024-01-26 14:55:03 · 95 阅读 · 0 评论 -
Java多线程实现交替打印(wait/notify)
【代码】Java多线程实现交替打印。原创 2024-01-26 14:53:47 · 157 阅读 · 0 评论 -
java 垃圾收集器
Serial垃圾回收器为单线程串行回收器,为HotSpot中Client模式下默认的新生代垃圾回收器,采用复制算法、串行回收和STW机制进行内存回收;Serial Old是运行在Client模式下默认的老年代垃圾回收器;Serial Old在Server模式下主要有两个用途:与新生代的Parallel Scavenge配合使用;作为老年代CMS回收器的后备垃圾收集方案。原创 2023-11-10 17:31:26 · 286 阅读 · 0 评论 -
java synchronized关键字
ABA问题的解决思路是每次变量更新的时候把变量的版本号加1,那么A-B-A就会变成A1-B2-A3,只要变量被某一线程修改过,改变量对应的版本号就会发生递增变化,从而解决了ABA问题。由偏向锁升级而来,当一个线程获取到锁后,此时这把锁是偏向锁,此时如果有第二个线程来竞争锁,偏向锁就会撤销(这个步骤也是十分耗资源的),升级为轻量级锁,之所以叫轻量级锁,是为了和重量级锁分开来,轻量级锁底层是通过自旋来实现的,并不会阻塞线程如果自旋次数过多仍然没有获取到锁,则会升级为重量级锁,重量级锁会导致线程阻塞。原创 2023-11-08 10:28:41 · 143 阅读 · 0 评论 -
java volatile关键字
在volatile修改之后,增加了一个内存屏障lock;addl $0,0(%%esp),内存屏障之前并不是原子的。偷懒了,并没有根据不同的CPU做优化,而是使用的所有CPU都通用的lock指令。原创 2023-11-08 10:26:01 · 123 阅读 · 0 评论