几种单例模式
懒汉模式_多线程安全 /** * ${todo} 类作用:可见性和锁实现单例模式_懒汉模式 */ public class VolatileSynchroized { private static volatile VolatileSynchroized si … 阅读全文
懒汉模式_多线程安全 /** * ${todo} 类作用:可见性和锁实现单例模式_懒汉模式 */ public class VolatileSynchroized { private static volatile VolatileSynchroized si … 阅读全文
@beforeClass:所有方法之前只执行一次 @BeforeClass public static void beforeClass() { System.out.println("所有方法之前执行一次:@beforeClass"); } @before: … 阅读全文
表数据 CREATE TABLE `student` ( `id` int(11) NOT NULL AUTO_INCREMENT, `name` varchar(255) DEFAULT NULL, `cid` int(11) DEFAULT NULL, P … 阅读全文
SpringMVC工作原理 原理图 流程 1. 前端request请求到dispatchServlet前端控制器; 2. dispatchServlet根据请求找HandlerMapping; 3. handlerMapping返回handler给dispat … 阅读全文
线程池 newCachedThreadPool corePoolSize为0,maxMumPoolSize=Interger.MAXE_VALUE,unit为秒,keepAliveTime为60 初始化为0线程,请求任务进来时,创建新线程,当线程空闲时间超过k … 阅读全文
死锁的介绍 何为死锁:当两个或两个以上的进程运行时,因请求资源而保持相互等待,没有外力进入时,进程无法进行下去. 产生死锁的四个条件: 1. 互斥:当锁被A线程所持有时,其他线程无法获得此资源 2. 请求与保持:当无法获取下一步资源和锁的时候,线程保持等待; … 阅读全文
并发之信号灯_semaphore 概念:可以维护访问自身线程的个数,并保持同步,acquire获得许可,release释放一个许可. 扩展 1. 配合线程池使用,semaphore构造参数的数字决定线程数. 2. 当构造参数为1时,可实现互斥锁;同synchr … 阅读全文
volatile总结 1.刷新内存,使共享数据线程间相互可见----内存可见性 了解内存可见性之前,需了解内存模型的读写方式,每个线程读写变量都是将主内存里面的数据拷贝一份到本地内存,然后对数据进行操作,最后刷新到主内存中去;所以当多个线程间同时对共同数据拷贝 … 阅读全文