- 博客(6)
- 资源 (7)
- 收藏
- 关注
转载 ConcurrentHashMap在JDK1.7和1.8中的不同实现
知止而后有定,定而后能静,静而后能安,安而后能虑,虑而后能得。ConcurrentHashMap在多线程环境下,使用HashMap进行put操作时存在丢失数据的情况,为了避免这种bug的隐患,强烈建议使用ConcurrentHashMap代替HashMap,为了对ConcurrentHashMap有更深入的了解,本文将对ConcurrentHashMap1.7和1.8的不同实现进行分析。...
2018-08-19 13:43:19 849
转载 多线程 ForkJoinPool 详解
背景:ForkJoinPool的优势在于,可以充分利用多cpu,多核cpu的优势,把一个任务拆分成多个“小任务”,把多个“小任务”放到多个处理器核心上并行执行;当多个“小任务”执行完成之后,再将这些执行结果合并起来即可。这种思想值得学习。使用Java7 提供了ForkJoinPool来支持将一个任务拆分成多个“小任务”并行计算,再把多个“小任务”的结果合并成总的计算结果。ForkJoi...
2018-08-19 13:36:41 5250 2
转载 MySQL并发时经典常见的死锁原因及解决方法
1. mysql都有什么锁MySQL有三种锁的级别:页级、表级、行级。表级锁:开销小,加锁快;不会出现死锁;锁定粒度大,发生锁冲突的概率最高,并发度最低。行级锁:开销大,加锁慢;会出现死锁;锁定粒度最小,发生锁冲突的概率最低,并发度也最高。页面锁:开销和加锁时间界于表锁和行锁之间;会出现死锁;锁定粒度界于表锁和行锁之间,并发度一般算法:next KeyLocks锁,同...
2018-08-19 13:31:18 781
转载 Mysql中update后insert造成死锁的分析
问题描述sql如下:START TRANSACTION;UPDATE table_a SET ... WHERE id = x ;IF(ROW_COUNT() = 0) THEN INSERT INTO table_a id VALUES x;END IF; COMMIT;其中id为主键。平均一天有不到10次的死锁。排查过程首先查看程序日志,发现死锁都只有新...
2018-08-19 11:14:37 5304
转载 Integer是不可变类,进入一个方法后,在里面的值的改变不会影响方法外的引用
先看一个方法:主函数的输出并没有像想像中一样会输出3,而是输出初始化的数值 0。这是因为与String类似,所有的包装类都是final类,即不可变类。虽然在代码A处看起来是改变了counter的值,但实际上是创建了另一个对象,并将方法内的counter参数的引用指向了这个新创建的对象,由于是不同的引用,所以不会对方法外的引用有任何的影响。内存图如下所示:在刚进入方法的时候:...
2018-08-19 11:03:05 4511 2
原创 Spring注解注入集合对象
目录1. @Autowired注解注入map、list与@Qualifier2. Spring依赖注入IoC各种数据类型(list、map、set、数组)1. @Autowired注解注入map、list与@Qualifierpackage com.imooc.beanannotation.multibean;public interface BeanInterface {...
2018-08-19 10:54:19 18387 4
[数学建模方法与分析].(新西兰)Mark.M.Meerschaert.清晰PDF版
2017-09-15
有名的combobox下拉框插件压缩后的js版本
2016-09-23
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人