摘要: 基本概念 1.AQS:AbstractQueuedSynchronizer类 AQS是java中管理“锁”的抽象类,锁的许多公共方法都是在这个类中实现。AQS是独占锁(例如,ReentrantLock)和共享锁(例如,Semaphore)的公共父类。 (01) 独占锁 -- 锁在一个时间点只能被一个 阅读全文
posted @ 2017-05-31 08:10 jiguojing 阅读(470) 评论(0) 推荐(0) 编辑
摘要: ReentrantLock简介 Reentrantlock是一个可重入的互斥锁,又被称为独占锁。 Reentrantlock:分为公平锁和非公平锁,它们的区别体现在获取锁的机制上是否公平。“锁”是为了保护竞争资源,防止多个线程同时操作线程而出错,ReentrantLock在同一个时间点只能被一个线程 阅读全文
posted @ 2017-05-30 23:03 jiguojing 阅读(302) 评论(0) 推荐(0) 编辑
摘要: java中的锁,可以分为同步锁和JUC包中的锁。 同步锁 通过synchronized关键字进行同步,实现对竞争资源的互斥访问的锁,。 原理:对于每一个对象,有且只有一个同步锁,在同一时间点,所有的线程中有且只有一个能获取该同步锁,获取到同步锁的就可以被CPU进行调度,其他线程必须等待,直到获取到同 阅读全文
posted @ 2017-05-30 21:13 jiguojing 阅读(730) 评论(0) 推荐(0) 编辑
摘要: 线程间的相互作用 线程之间需要一些协调通信,来共同完成一件任务。 Object类相关的方法:notify(),notifyAll(),wait()。会被所有的类继承,这些方法是final不能被重写。他们操控的是每个对象都会有的锁,如果不在synchronized里面调用wait,notify,not 阅读全文
posted @ 2017-05-25 19:37 jiguojing 阅读(347) 评论(0) 推荐(0) 编辑
摘要: 多线程同时访问一个资源,可以会产生不可预料的结果,所以为这个资源加锁,访问资源的第一个线程为其加锁后,其他线程便不能在使用那个资源,直到锁被解除。 举个例子: 存款1000元,能取出800的时候我就取800,当我同时用两个线程调用这个取钱操作时,有时可以取出1600元 synchronized: 所 阅读全文
posted @ 2017-05-24 20:05 jiguojing 阅读(341) 评论(0) 推荐(0) 编辑
摘要: 线程的创建到消亡的历程: java多线程的5种状态: (1)New(新建) new Thread(run()) 该线程还没开始运行,状态是new,在程序运行前还有一些基础工作要做 (2)runnable(就绪) 一旦调用start()方法,线程就处于runnable状态,可运行的线程可能正在运行,也 阅读全文
posted @ 2017-05-24 14:54 jiguojing 阅读(432) 评论(0) 推荐(1) 编辑
摘要: 一.Thread的使用 (1)sleep:进程等一会 (2)join:让并发处理变成串行 (3)start:启动线程的唯一方法,start()首先为线程分配必须的系统资源,调度线程运行并执行线程的run()方法 (4)run:放入的是线程的工作 (5)Interrupt 和stop:这两个关键字都是 阅读全文
posted @ 2017-05-23 11:11 jiguojing 阅读(336) 评论(0) 推荐(0) 编辑
摘要: 简单了解下多任务相关 多任务 不管是单核还是多核CPU,一单任务数量超过核数,OS都会把每个任务轮流调度到每个核心上,OS实现多线程和多进程往往都是通过时间片的形式执行的,即:每个任务(进程/线程)轮流执行,因为时间片切分的很小,以至于我们感觉多个任务在同时执行。 实现多任务方式:多进程模式,多线程 阅读全文
posted @ 2017-05-23 09:50 jiguojing 阅读(358) 评论(0) 推荐(0) 编辑
摘要: 第二章: 1.sql分类 DDL(Data Definition Languages)语句:数据定义语言,这些语句定义了不同的数据段、数据库、表、列、索引等数据库对象的定义。 常用的语句关键字主要包括 create、drop、alter等。 DML(Data Manipulation Languag 阅读全文
posted @ 2017-05-22 19:59 jiguojing 阅读(472) 评论(0) 推荐(0) 编辑
摘要: SpringMVC工作流程 图一:请求流程概述 图二:请求在每个组件的处理 解释Spring工作流程 1.用户向服务器发送请求,请求被spring前端控制Servelt DispatcherServelt捕获 2.DispatcherServelt解析URL得到URI(资源标识符),根据URI找到对 阅读全文
posted @ 2017-05-22 19:53 jiguojing 阅读(1001) 评论(0) 推荐(0) 编辑