自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(6)
  • 收藏
  • 关注

原创 java 多线程 Queue

在并发队列JDK提供了两套实现 1.ConcurrentLinkedQueue 为代表的高性能队列 2.BlockingQueue接口为代表的阻塞队列   1.ConcurrentLinkedQueue :是一个适用于高并发场景的队列,通过无锁的方式,实现了高并发状态下的高性能,通常ConcurrentLinkedQueue 性能好于BlockingQueue。它是一个基于链接节点的无界线

2017-02-28 23:37:02 339

原创 java 多线程 同步类容器与并发类容器

1.同步类容器都是线程安全的,但在某些场景下可能需要加锁来保护复合操作。 同步类容器:如古老的Vector·HashTable.这些容器的同步功能都是有JDK的Collerctions.synchronized**等工厂方法去创建实现的。其底层的机制无非就是用传统的synchronized关键字对每个公用的方法进行同步的,使得每次只能一个线程访问容器的状态。这很明显不满足我互联网高并发的需求。

2017-02-27 23:28:30 312

原创 java 多线程 ThreadLocal/ 单例

ThreadLocal概念:线程局部变量,是一种多线程间并发访问的解决方案,与其synchronized等加锁的方式不同,ThreadLocal完全不提供锁,而使用以空间换时间的手段,为每个线程提供变量的独立副本,以保障线程安全。 从性能上说,ThreadLocal不具有绝对的优势,在并发不是很高的时候,加锁的性能会更好,但作为一套与锁完全无关的线程安全解决方案,在高并发量或者竞争激烈的场景,使

2017-02-27 22:42:37 736

原创 java 多线程 线程之间的通信

线程通信概念: 线程是操作系统中独立的个体,但这些个体如果不经过特殊的处理就不能成为一个整体,线程间的通信就成为整体的必用方式之一,当线程存在通信指挥,系统减的交互性会更强大,在提高CPU利用率的同时还会使开发人员对线程任务在处理的过程中进行有效的把控与监督。 使用wait/notify 方法实现线程间的通信(注意这两个方法都是object的类的方法) 1.wait和notify 必

2017-02-26 15:20:28 298

翻译 java 多线程 volatile 关键字

volatile这个关键字可能很多朋友都听说过,或许也都用过。在Java 5之前,它是一个备受争议的关键字,因为在程序中使用它往往会导致出人意料的结果。在Java 5之后,volatile关键字才得以重获生机。  volatile关键字虽然从字面上理解起来比较简单,但是要用好不是一件容易的事情。由于volatile关键字是与Java的内存模型有关的,因此在讲述volatile关键之前,我们先来了解...

2017-02-26 14:31:10 232

原创 java 多线程 synchronized

线程安全概念:当多个线程访问某一个类(对象或方法)时,这个类始终都能表现出正确的行为,那么这个类就是线程安全的。 synchronized:可以在任意对象及方法上加锁,而枷锁的这段代码成为“互斥区”或临界区。 package com.cn.test; public class MyThread extends Thread{ private int count =5; pu

2017-02-26 11:33:15 368

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除