摘要:
CAS (Compare and Swap),比较并交换 ,是线程安全实现方式--非阻塞同步的方式,它体现的一种乐观锁的思想。 《深入理解Java虚拟机:JVM高级特性与最佳实践(第3版) 周志明》一书中的描述如下: 实例 比如多个线程要对一个共享的整型变量执 行 +1 操作: 获取共享变量时,为了 阅读全文
摘要:
使用SQL中的UPDATE关键字更新多个字段值时,SET后面的更新字段应该使用逗号而不能用AND。虽然用AND不会报错,但会使更新结果错误,下面我将通过场景来分析当我们使用AND时SQL的执行过程和为什么更新结果只会是0/1/NULL; 场景示例 以下是场景更新前的原始查询数据如下: 更新场景1 更 阅读全文
摘要:
LinkedHashMap存储数据时会记录顺序,所以取出的的时候就是有序的。hashMap存储和取出都是无序的,hashMap键只能允许为一条为空,value可以允许为多条为空,键唯一,但值可以多个。 parallelStream提供了流的并行处理,它是Stream的另一重要特性,其底层使用Fork 阅读全文
摘要:
什么是集群 集群是指将多台服务器集中在一起,每台服务器都实现相同的业务,做相同的事情。但是每台服务器并不是缺一不可,存在的作用主要是缓解并发压力和单点故障转移问题。 集群主要具有以下特性: (1)伸缩性(2)高可用性 (3)负载均衡(4)高性能 什么是分布式 分布式服务是指将多台服务器集中在一起,每 阅读全文
摘要:
从源码的角度 (1)HashMap的put()方法中,有modCount++的操作,即调用put()时,修改次数加1,“i++”操作,从表面上看 i++ 只是一行代码,但实际上它并不是一个原子操作,它的执行步骤主要分为三步,而且在每步操作之间都有可能被打断。 (1)第一个步骤是读取; (2)第二个步 阅读全文