Loading

摘要: HTTP 状态码(HTTP Status Code) 服务器返回一个包含HTTP状态码的信息头(server header)以响应浏览器的请求。 分类 分类 描述 1** 信息,服务器收到请求,需要请求者继续执行操作 2** 成功,操作成功接受并处理 3** 重定向,需要进一步操作以完成请求 4** 阅读全文
posted @ 2020-06-30 21:39 战五渣渣渣渣渣 阅读(183) 评论(0) 推荐(0) 编辑
摘要: HashMap详解(基于JDK 1.8) 简介 Map接口定义了映射关系,有四个常用实现类: HashMap Hashtable LinkedHashMap TreeMap HashMap: 根据键key的hashCode值存储数据. 访问速度快,遍历速度较慢. 最多允许一条记录的键为null. 允 阅读全文
posted @ 2020-06-30 21:38 战五渣渣渣渣渣 阅读(201) 评论(0) 推荐(0) 编辑
摘要: FutureTask详解 简介 FutureTask为Future的实现类. 用以获取任务执行结果(get)和取消任务(cancel). 若任务未完成,则获取任务结果时会被阻塞. 若任务执行完成后,任务不能被重启或取消. 可用作一个任务提交到线程中执行. 线程安全由CAS保证. FutureTask 阅读全文
posted @ 2020-06-30 21:36 战五渣渣渣渣渣 阅读(260) 评论(0) 推荐(0) 编辑
摘要: ForkJoin框架详解 什么是Fork/Join框架 提供一个可以用于并行执行任务的框架. 是把一个大任务分割成若干个小任务,最终汇总小任务结果后得到大任务结果的框架. Fork:将大任务切分成若干个子任务并行的执行. Join:合并这些子任务的执行结果,最后得到大任务的结果. 工作窃取算法(wo 阅读全文
posted @ 2020-06-30 21:35 战五渣渣渣渣渣 阅读(261) 评论(0) 推荐(0) 编辑
摘要: final详解 基础使用 修饰类 表示该类不允许被继承. 其所有方法隐式为final,无法覆盖. 注: 对于final类,可以通过组合方式对其扩展. 示例: // 通过在类中构造一个私有的final类的实例,调用实例的方法,实现对应的功能. // 再创建新的扩展方法 class newClass{ 阅读全文
posted @ 2020-06-30 21:34 战五渣渣渣渣渣 阅读(271) 评论(0) 推荐(0) 编辑
摘要: Exchanger详解 简介 当一个线程到达栅栏时,会检查是否有其他线程已经到达栅栏. 若没有,则该线程进入等待. 若有,则与等待的其他线程交换各自的数据,然后继续执行. 原理 内部类Participant继承自ThreadLocal,用来保存线程本地变量Node. Node存储用于单槽交换和多槽交 阅读全文
posted @ 2020-06-30 21:33 战五渣渣渣渣渣 阅读(504) 评论(0) 推荐(1) 编辑
摘要: DNS解析过程 DNS简介 DNS:TCP/IP是基于IP的,网络通信时需要将域名转换为IP地址。DNS服务器由给定的域名给出对应的IP地址。 根域 根域服务器是具有13个IP地址,但服务器的个数不止13个. 这些IP地址通过任播技术,可以在全球任意地方设立这些IP地址的镜像站点. 域的划分 根域下 阅读全文
posted @ 2020-06-30 21:31 战五渣渣渣渣渣 阅读(171) 评论(0) 推荐(0) 编辑
摘要: CyclicBarrier详解 简介 阻塞一组线程,直到某个事件发生. 所有线程必须都到达栅栏位置时,才能继续执行. 使得一定数量的线程反复在栅栏位置汇集.需要等待集合的线程调用await()方法在栅栏处阻塞. 栅栏释放阻塞的线程后会重置以便下一次使用. 核心方法 await()方法 会调用dowa 阅读全文
posted @ 2020-06-30 21:30 战五渣渣渣渣渣 阅读(190) 评论(0) 推荐(0) 编辑
摘要: ConuntDownLatch详解 允许一个或多个线程等待,直到其他线程执行完后再执行. 原理 通过一个计数器来实现的. 计数器的初始化值为线程的数量. 每个线程在完成自己的任务后,计数器的值应当减一. 当计数器到达0时,表示所有线程完成任务,等待的线程则可以恢复执行任务. 闭锁(Latch) 延迟 阅读全文
posted @ 2020-06-30 21:29 战五渣渣渣渣渣 阅读(475) 评论(0) 推荐(0) 编辑
摘要: CopyOnWriteArrayList详解 简介 Copy-On-Write(COW): 开始时共享同一资源,但一个线程修改部分内容时,才会用修改后的内容覆盖旧的内容.是一种延时懒惰策略. 有两种COW机制的并发容器: CopyOnWriteArrayList. CopyOnWriteArrayS 阅读全文
posted @ 2020-06-30 21:28 战五渣渣渣渣渣 阅读(226) 评论(0) 推荐(0) 编辑
摘要: Cookie和Session机制详解 简介 Cookie:通过客户端记录消息确定用户身份. Session:通过服务器端记录消息确定用户身份. Cookie机制 流程: 用户访问网站时,会提供个人消息. 服务器向客户端回传消息(存放在响应头中),包含Set-Cookie,用来指示需要设置Cookie 阅读全文
posted @ 2020-06-30 15:33 战五渣渣渣渣渣 阅读(213) 评论(0) 推荐(0) 编辑
摘要: ConcurrentLinkedQueue详解 简介 实现线程安全的队列的两种方式: 使用阻塞算法:对入队和出队使用同一把锁(或不同的锁). 使用非阻塞算法:使用循环CAS方式实现. ConcurrentLinkedQueue是一个基于链接节点的无界线程安全队列. 采用先进先出规则对节点排序. 添加 阅读全文
posted @ 2020-06-30 15:32 战五渣渣渣渣渣 阅读(1429) 评论(0) 推荐(0) 编辑
摘要: ConcurrentHashMap小结 ConcurrentHashMap与HashTable 都是线程安全的. HashTable:对get和put相关操作设加锁synchronized,相当于给整个哈希表加锁,多线程访问时只有一个线程可以访问和操作数据,其他线程阻塞,性能差. Concurren 阅读全文
posted @ 2020-06-30 15:31 战五渣渣渣渣渣 阅读(124) 评论(0) 推荐(0) 编辑
摘要: JUC原子类 CAS 实现线程安全的方法: 互斥同步:synchronized,Lock. 非阻塞同步:CAS,Atomic. 无同步方法:栈封闭,ThreadLocal,可重入代码 CAS介绍 CAS(Compare-And-Swap):对比并交换,是一个原子操作. 先比较旧值是否发生变化,若没有 阅读全文
posted @ 2020-06-30 15:29 战五渣渣渣渣渣 阅读(124) 评论(0) 推荐(0) 编辑
摘要: BlockingQueue详解 简介 BlockingQueue接口表示一个线程安全的放入和提取实例的队列. BlockingQueue和BlockingDequeue BlockingQueue 常用于一个线程生产对象,一个线程消费对象. 只从一端放入对象,从另外一端取出对象. 一个线程持续生产对 阅读全文
posted @ 2020-06-30 15:27 战五渣渣渣渣渣 阅读(579) 评论(0) 推荐(0) 编辑
摘要: ArrayList小结 ArrayList概述 特点: 基于数组,是动态可自动扩容的。 不是线程安全的。多线程可使用Collections.synchronizedList(List l)函数返回一个线程安全的ArrayList类,或使用JUC的CopyOnWriteArrayList类。 实现Se 阅读全文
posted @ 2020-06-30 15:26 战五渣渣渣渣渣 阅读(96) 评论(0) 推荐(0) 编辑
摘要: AQS详解 AQS:提供原子式管理同步状态,阻塞和唤醒线程功能以及队列模型。 ReentrantLock 特性 为可重入锁,一个线程能够对一个临界资源重复加锁。 通过AQS实现锁机制。 支持响应中断,超时和尝试获取锁。 必须使用unlock()释放锁。 有公平锁和非公平锁。 可以关联多个条件队列。 阅读全文
posted @ 2020-06-30 15:24 战五渣渣渣渣渣 阅读(1057) 评论(0) 推荐(0) 编辑
摘要: MySQL基础 创建数据库 create database if not exists test default character set utf8 default collate utf8_general_ci; 解释: if not exists:若数据库存在,则不创建数据库. charact 阅读全文
posted @ 2020-06-30 15:22 战五渣渣渣渣渣 阅读(104) 评论(0) 推荐(0) 编辑