Java并发编程的技能基本涵括以下5方面: 多线程 线程池 线程锁 并发工具类 并发容器 多线程的4种创建方式 继承Thread 实现Runnable接口 实现Callable接口 以及线程池来创建线程 Java线程的生命周期 线程的创建 线程的就绪 线程的运行 线程的阻塞 线程的死亡 Java线程 ...
分类:
编程语言 时间:
2020-05-08 09:58:22
阅读次数:
79
高并发编程系列 高并发编程系列:NIO、BIO、AIO的区别,及NIO的应用和框架选型 高并发编程系列:ConcurrentHashMap的实现原理(JDK1.7和JDK1.8) 高并发编程系列:CountDownLatch、Semaphore等4大并发工具类详解 高并发编程系列:并发容器的原理,7 ...
分类:
Web程序 时间:
2020-05-08 09:38:29
阅读次数:
102
天猫高级Java一面 常见集合类的区别和适用场景 并发容器了解哪些? 如何判断链表是否有环 concurrentHashMap如何实现 集群服务器 如何application 共享 JAVA网络编程中:BIO、NIO、AIO的区别和联系 jvm内存模型jmm 知道的全讲讲 JAVA的垃圾回收,标记算 ...
分类:
编程语言 时间:
2020-05-07 15:31:37
阅读次数:
95
Java多线程并发工具类-Semaphore对象讲解 通过前面的学习,我们已经知道了Java多线程并发场景中使用比较多的两个工具类:做加法的CycliBarrier对象以及做减法的CountDownLatch对象并对这两个对象进行了比较。我们发现这两个对象要么是做加法,要么是做减法的。那么有没有既做 ...
分类:
编程语言 时间:
2020-04-12 10:16:24
阅读次数:
64
Copy On Write简称COW,是一种用于程序设计中的优化策略。其基本思路是,从一开始大家都在共享同一个内容,当某个人想要修改这个内容的时候,才会真正把内容Copy出去形成一个新的内容然后再改,这是一种延时懒惰策略。从JDK1.5开始Java并发包里提供了两个使用CopyOnWrite机制实现 ...
分类:
其他好文 时间:
2020-03-31 23:08:14
阅读次数:
65
容器架构 Hashtable HashMap SynchronizedHashMap CurrentHashMap CurrentSkipListMap(弥补同步的TreeMap) Hashtable所以方法默认加sychronized, HashMap默认没有加锁, 而SynchronizedHa ...
分类:
编程语言 时间:
2020-03-31 20:55:14
阅读次数:
83
前言 Java并发包有很大一部分都是关于并发容器的。Java在5.0版本之前线程安全的容器称之为 同步容器 。同步容器实现线程安全的方式:是将每个公有方法都使用 修饰,保证每次只有一个线程能访问容器的状态。但是这样的串行度太高,将严重降低并发性,当多个线程竞争容器的锁时,吞吐量将严重降低。因此,在J ...
分类:
编程语言 时间:
2020-02-23 18:34:19
阅读次数:
103
arraylist: 底层object数组, ensureCapcityInternal 判断是否数组扩容 copyonwritearraylist: copyonwrite机制: 当进行资源写入时,系统生成资源副本进行修改。保证写入原子性。写入加锁 hashset: 底层实现:hashmap K+ ...
分类:
其他好文 时间:
2020-02-21 20:14:37
阅读次数:
89
蚂蚁花呗一面(一个小时):Java容器有哪些?哪些是同步容器,哪些是并发容器?ArrayList和LinkedList的插入和访问的时间复杂度?java反射原理,注解原理?新生代分为几个区?使用什么算法进行垃圾回收?为什么使用这个算法?HashMap在什么情况下会扩容,或者有哪些操作会导致扩容?HashMappush方法的执行过程?HashMap检测到hash冲突后,将元素插入在链表的末尾还是开头
分类:
编程语言 时间:
2020-02-21 16:19:54
阅读次数:
69
解决并发情况下的容器线程安全问题的。给多线程环境准备一个线程安全的容器对象。 线程安全的容器对象: Vector, Hashtable。线程安全容器对象,都是使用 synchronized 方法实现的。 concurrent 包中的同步容器,大多数是使用系统底层技术实现的线程安全。类似 native ...
分类:
编程语言 时间:
2020-02-18 16:38:54
阅读次数:
80