阿里-马云的学习笔记

导航

上一页 1 ··· 17 18 19 20 21 22 23 24 25 ··· 27 下一页

2019年5月29日 #

mybatis深入理解(一)-----Mybatis初始化机制详解

摘要: 对于任何框架而言,在使用前都要进行一系列的初始化,MyBatis也不例外。本章将通过以下几点详细介绍MyBatis的初始化过程。 一、 MyBatis的初始化做了什么 1、configuration 任何框架的初始化,无非是加载自己运行时所需要的配置信息。MyBatis的配置信息,大概包含以下信息, 阅读全文

posted @ 2019-05-29 21:53 阿里-马云的学习笔记 阅读(709) 评论(0) 推荐(0) 编辑

2019年5月27日 #

java并发系列(八)-----java异步编程

摘要: 同步计算与异步计算 从多个任务的角度来看,任务是可以串行执行的,也可以是并发执行的。从单个任务的角度来看,任务的执行方式可以是同步的,也可以是异步的。 Runnable、Callable、FutureTask 1、Runnable 先说一下java.lang.Runnable吧,它是一个接口,在它里 阅读全文

posted @ 2019-05-27 23:12 阿里-马云的学习笔记 阅读(9894) 评论(0) 推荐(1) 编辑

Spring事务传播行为详解

摘要: 前言 Spring在TransactionDefinition接口中规定了7种类型的事务传播行为。事务传播行为是Spring框架独有的事务增强特性,他不属于的事务实际提供方数据库行为。这是Spring为我们提供的强大的工具箱,使用事务传播行可以为我们的开发工作提供许多便利。但是人们对他的误解也颇多, 阅读全文

posted @ 2019-05-27 21:07 阿里-马云的学习笔记 阅读(5480) 评论(2) 推荐(9) 编辑

java并发系列(七)-----ConcurrentHashMap原理分析(JDK1.8)

摘要: JDK1.8的实现已经摒弃了Segment的概念,而是直接用Node数组+链表+红黑树的数据结构来实现,并发控制使用Synchronized和CAS来操作,整个看起来就像是优化过且线程安全的HashMap,虽然在JDK1.8中还能看到Segment的数据结构,但是已经简化了属性,只是为了兼容旧版本。 阅读全文

posted @ 2019-05-27 20:44 阿里-马云的学习笔记 阅读(372) 评论(0) 推荐(0) 编辑

java并发系列(六)-----Java并发:volatile关键字解析(内存语义、实现原理)

摘要: 在 Java 并发编程中,要想使并发程序能够正确地执行,必须要保证三条原则,即:原子性、可见性和有序性。只要有一条原则没有被保证,就有可能会导致程序运行不正确。volatile关键字 被用来保证可见性,即保证共享变量的内存可见性以解决缓存一致性问题。一旦一个共享变量被 volatile关键字 修饰, 阅读全文

posted @ 2019-05-27 20:34 阿里-马云的学习笔记 阅读(420) 评论(0) 推荐(0) 编辑

java并发系列(五)-----如何正确的关闭一个线程

摘要: 正确的关闭一个线程可不是简单的事情,由于线程调度的复杂性以及不可控性(毕竟运行都由操作系统做主),先来了解一下interrupt() 1、interrupt() 根据jdk文档的介绍,如下: interrupt()的作用是中断本线程。 本线程中断自己是被允许的;其它线程调用本线程的interrupt 阅读全文

posted @ 2019-05-27 00:54 阿里-马云的学习笔记 阅读(4628) 评论(0) 推荐(0) 编辑

2019年5月26日 #

java并发系列(四)-----源码角度彻底理解ReentrantLock(重入锁)、AQS

摘要: 1.前言 ReentrantLock可以有公平锁和非公平锁的不同实现,只要在构造它的时候传入不同的布尔值,继续跟进下源码我们就能发现,关键在于实例化内部变量sync的方式不同,如下所示: /** * Creates an instance of {@code ReentrantLock} with 阅读全文

posted @ 2019-05-26 23:41 阿里-马云的学习笔记 阅读(248) 评论(0) 推荐(0) 编辑

java并发系列(三)-----ReentrantLock(重入锁)功能详解和应用演示

摘要: 1. ReentrantLock简介 jdk中独占锁的实现除了使用关键字synchronized外,还可以使用ReentrantLock。虽然在性能上ReentrantLock和synchronized没有什么区别,但ReentrantLock相比synchronized而言功能更加丰富,使用起来更 阅读全文

posted @ 2019-05-26 22:09 阿里-马云的学习笔记 阅读(665) 评论(0) 推荐(0) 编辑

2019年5月24日 #

java并发系列(二)-----线程之间的协作(wait、notify、join、CountDownLatch、CyclicBarrier、Semaphore)

摘要: 在java中,线程之间的切换是由操作系统说了算的,操作系统会给每个线程分配一个时间片,在时间片到期之后,线程让出cpu资源,由其他线程一起抢夺,那么如果开发想自己去在一定程度上(因为没办法100%控制它)让线程之间互相协作、通信,有哪些方式呢? wait、notify、notifyAll 1、voi 阅读全文

posted @ 2019-05-24 00:01 阿里-马云的学习笔记 阅读(510) 评论(0) 推荐(0) 编辑

2019年5月22日 #

java并发系列(一)-----多线程简介、创建以及生命周期

摘要: 进程、线程与任务 进程:程序运行资源分配的最小单位,进程内部有多个线程,会共享这个进程的资源。 打开电脑的任务管理器,如下: 正在运行的360浏览器就是一个进程。运行一个java程序的实质是启动一个java虚拟机进程,也就是说一个运行的java程序就是一个java虚拟机进程。进程是程序向操作系统申请 阅读全文

posted @ 2019-05-22 21:47 阿里-马云的学习笔记 阅读(453) 评论(0) 推荐(0) 编辑

上一页 1 ··· 17 18 19 20 21 22 23 24 25 ··· 27 下一页