
java并发
过客看海
离开业务的技术没有意义,离开技术的业务没有底气
展开
-
垃圾回收算法——复制算法 以及eden和survivor
复制(Copying)算法说到底也是为了解决标记-清除算法产生的那些碎片。首先将内存分为大小相等的两部分(假设A、B两部分),每次呢只使用其中的一部分(这里我们假设为A区),等这部分用完了,这时候就将这里面还能活下来的对象复制到另一部分内存(这里设为B区)中,然后把A区中的剩下部分全部清理掉。这样一来每次清理都要对一半的内存进行回收操作,这样内存碎片的问题就解决了,可以说简单,高效。...转载 2019-11-10 16:36:56 · 1046 阅读 · 0 评论 -
java并发机制底层实现原理
一 volatilevolatile 变量修饰的共享变量进行写操作时转换成汇编代码时会添加LOCK前缀、 Lock前缀指令再多核处理器下会引发两件事情1、将当前处理器缓存行的数据协会到系统内存2、这个写回内存的操作会使其他cpu里面缓存了该内存地址的数据无效二 synchronized 原理与应用对于普通同步方法 锁是当前实例对象对于静态同步方法 锁是当前类...原创 2019-05-24 12:11:10 · 253 阅读 · 0 评论 -
java并发基础整理(一)
1. 什么是线程和进程?1.1. 何为进程?进程是程序的一次执行过程,是系统运行程序的基本单位,因此进程是动态的。系统运行一个程序即是一个进程从创建,运行到消亡的过程。在 Java 中,当我们启动 main 函数时其实就是启动了一个 JVM 的进程,而 main 函数所在的线程就是这个进程中的一个线程,也称主线程。如下图所示,在 windows 中通过查看任务管理器的方式,我们就可...转载 2019-07-09 13:58:47 · 197 阅读 · 0 评论 -
java并发基础整理(二)
1. synchronized 关键字1.1. 说一说自己对于 synchronized 关键字的了解synchronized关键字解决的是多个线程之间访问资源的同步性,synchronized关键字可以保证被它修饰的方法或者代码块在任意时刻只能有一个线程执行。另外,在 Java 早期版本中,synchronized属于重量级锁,效率低下,因为监视器锁(monitor)是依赖于底层的操...转载 2019-07-09 14:01:36 · 154 阅读 · 0 评论 -
Java并发整理——java内存区域(三)
基本问题:介绍下 Java 内存区域(运行时数据区) Java 对象的创建过程(五步,建议能默写出来并且要知道每一步虚拟机做了什么) 对象的访问定位的两种方式(句柄和直接指针两种方式)拓展问题:String类和常量池 8种基本类型的包装类和常量池1 概述对于 Java 程序员来说,在虚拟机自动内存管理机制下,不再需要像C/C++程序开发程序员这样为内一个 new 操作去写对应...转载 2019-07-09 14:05:57 · 317 阅读 · 1 评论 -
java并发整理—— synchronized (四)
synchronized关键字最主要的三种使用方式的总结修饰实例方法,作用于当前对象实例加锁,进入同步代码前要获得当前对象实例的锁 修饰静态方法,作用于当前类对象加锁,进入同步代码前要获得当前类对象的锁。也就是给当前类加锁,会作用于类的所有对象实例,因为静态成员不属于任何一个实例对象,是类成员( static 表明这是该类的一个静态资源,不管new了多少个对象,只有一份,所以对该类的所...转载 2019-07-09 14:07:37 · 286 阅读 · 0 评论 -
java并发整理——AQS (六)
常见问题:AQS原理?;CountDownLatch和CyclicBarrier了解吗,两者的区别是什么?用过Semaphore吗?1 AQS 简单介绍AQS的全称为(AbstractQueuedSynchronizer),这个类在java.util.concurrent.locks包下面。AQS是一个用来构建锁和同步器的框架,使用AQS能简单且高效地构造出应用广泛的大量的同步...转载 2019-07-09 14:14:07 · 128 阅读 · 0 评论 -
java并发整理——并发容器(七)
一 JDK 提供的并发容器总结JDK提供的这些容器大部分在java.util.concurrent包中。ConcurrentHashMap:线程安全的HashMap CopyOnWriteArrayList:线程安全的List,在读多写少的场合性能非常好,远远好于Vector. ConcurrentLinkedQueue:高效的并发队列,使用链表实现。可以看做一个线程安全的 ...转载 2019-07-09 14:25:44 · 134 阅读 · 0 评论 -
java并发整理
java并发基础整理(一)java并发基础整理(二)Java并发整理——java区域(三)java并发整理—— synchronized (四)java并发整理——Atomic原子类介绍(五)java并发整理——AQS (六)java并发整理——并发容器(七)之前收藏的比较好的文章有些一段时间后就不能看了 为了长久留存所以整理一下 发到这里纯粹为了记录下来温故知新感...转载 2019-07-09 15:49:47 · 188 阅读 · 0 评论