摘要: MySQL存储引擎简介 1. 查看命令 a. 查看所使用的MySQL现在已提供什么存储引擎: mysql show engines; b. 查看所使用的MySQL当前默认的存储引擎: mysql show variables like '%storage_engine%'; 2. MyISAM和In 阅读全文
posted @ 2018-07-10 11:06 chunfulandu 阅读(258) 评论(0) 推荐(1) 编辑
摘要: 本博文所有的代码均为shiro官网(http://shiro.apache.org/)中shiro 1.3.2版本中的源码。 追踪Subject的login(AuthenticationToken token)方法,其调用的为DelegatingSubject类的login方法,Delegating 阅读全文
posted @ 2017-02-24 00:45 chunfulandu 阅读(25647) 评论(0) 推荐(0) 编辑
摘要: package com.java.juc; /** * 题目:判断打印 "one" or "two" * * 1.两个普通同步方法,两个线程 ,标准打印,打印?// one two * 2.新增Thread.sleep(3000) 给getOne() 打印? // 3s 后打印 one two * 阅读全文
posted @ 2017-02-19 23:05 chunfulandu 阅读(551) 评论(0) 推荐(0) 编辑
摘要: ReadWriteLock维护了一对锁,读锁可允许多个读线程并发使用,写锁是独占的。 下面通过一个简单的例子来了解ReadWriteLock。 阅读全文
posted @ 2017-02-19 22:43 chunfulandu 阅读(1909) 评论(0) 推荐(0) 编辑
摘要: Condition Condition接口描述了可能会与锁有关联的条件变量。这些变量在用法与使用Object.wait访问的隐式监视器类似,但提供了更强大的功能。需要特别指出的是,单个Lock可能与多个Condition对象关联。为了避免兼容性问题,Condition方法的名称与对应的Object版 阅读全文
posted @ 2017-02-19 03:08 chunfulandu 阅读(976) 评论(0) 推荐(0) 编辑
摘要: 首先引入下面这段生产者和消费者的程序,店员类作为生产产品和消费产品的中介,其中的数据product为共享数据,产品最多只能囤积5个,当产品达到5个还在生产时,就会提示“产品已满!”,类似地,如果产品只有0个了还在消费,会提示“缺货!”: 运行程序,结果如下: 这是一种不好的情况,因为当产品已满时,还 阅读全文
posted @ 2017-02-19 02:29 chunfulandu 阅读(626) 评论(0) 推荐(0) 编辑
摘要: Fork/Join框架介绍 下面使用该框架计算0-50000000000的和,并比较普通计算方法、Fork/Join框架、Java8新特性三种计算方式的计算时间: 转载自:http://blog.csdn.net/xiangwanpeng/article/details/54977709 阅读全文
posted @ 2017-02-19 01:36 chunfulandu 阅读(249) 评论(0) 推荐(0) 编辑
摘要: jdk1.7中java.util.concurrent.Executor线程池体系介绍 java.util.concurrent.Executor : 负责线程的使用与调度的根接口 |–ExecutorService:Executor的子接口,线程池的主要接口 |–ThreadPoolExecuto 阅读全文
posted @ 2017-02-19 01:22 chunfulandu 阅读(5297) 评论(1) 推荐(3) 编辑
摘要: 用于解决多线程安全问题有三种方式: 同步代码块(隐式锁,基于JVM) 同步方法(隐式锁,基于JVM) 同步锁(显式锁,jdk1.5后出现,相对于前两种方式,更加灵活) 下面通过一段程序来说明一下同步锁的简单使用。 阅读全文
posted @ 2017-02-14 01:54 chunfulandu 阅读(290) 评论(0) 推荐(0) 编辑
摘要: 创建执行线程有四种方式: 实现implements接口创建线程 继承Thread类创建线程 实现Callable接口,通过FutureTask包装器来创建线程 使用线程池创建线程 下面介绍通过实现Callable接口来创建线程。 阅读全文
posted @ 2017-02-14 01:37 chunfulandu 阅读(7211) 评论(1) 推荐(0) 编辑