Java
酷暑冷冰
这个作者很懒,什么都没留下…
展开
-
JVM、JMM与硬件的对应关系
1. JVM内存区域 1. 程序计数器 线程的私有数据,存放执行下一条指令的地址。 1.在任一具体时刻,一个CPU的内核只会执行一条线程中的指令,因此,为了能够使得每个线程都在线程切换后能够恢复在切换之前的程序执行位置,每个线程都需要有自己独立的程序计数器。 2.在JVM规范中规定,如果线程执行的是非native方法,则程序计数器中保存的是当前需要执行的指令的地址;如果线程执行的是native方...原创 2019-06-13 11:54:09 · 1440 阅读 · 0 评论 -
CAS&AQS
CAS CAS (compareAndSwap),中文叫比较交换,一种无锁原子算法。过程是这样:它包含 3 个参数 CAS(V,E,N),V表示要更新变量的值,E表示预期值,N表示新值。仅当 V值等于E值时,才会将V的值设为N,如果V值和E值不同,则说明已经有其他线程做两个更新,则当前线程则什么都不做。最后,CAS 返回当前V的真实值。CAS 操作时抱着乐观的态度进行的,它总是认为自己可以成功完成...原创 2019-06-19 13:01:50 · 150 阅读 · 0 评论 -
synchronized
现在看来synchronized的效率很低,但是确实其他并发容器的基础,所以还是很值得学的。 1. synchronized的应用 在java代码中使用synchronized可是使用在代码块和方法中,根据synchronized用的位置可以有这些使用场景: 当多个线程访问被synchronized的方法或者代码块时会进行同步 其中,如果被锁的的对象时Class对象,那么通过该Class对象所实...原创 2019-06-15 00:52:35 · 137 阅读 · 0 评论 -
java字节码文件
常量池表 访问修饰符(Access_flags)表 字段(Fields)表 包含类变量、成员变量 不包括成员变量原创 2019-06-04 18:12:22 · 217 阅读 · 0 评论 -
单例模式(DCL、holder等)
单利模式 单利模式简单的来说由两部分组成: 只实例化一次 提供返回这个实例的方法 单利模式的好坏在于线程安全、性能(效率)、懒加载这三个属性的好坏 那怎么实现单利模式呢?也就是怎么才能保证一直只有一个实例呢? 很快我们就能想到static关键字 饿汉模式 public class HungerySingletonDemo { private static HungerySingletonDe...原创 2019-06-17 22:51:14 · 291 阅读 · 0 评论