会员
众包
新闻
博问
闪存
赞助商
HarmonyOS
Chat2DB
所有博客
当前博客
我的博客
我的园子
账号设置
会员中心
简洁模式
...
退出登录
注册
登录
人生设计师
博客迁移到:http://blog.longjiazuo.com/
博客园
首页
新随笔
联系
订阅
管理
上一页
1
···
29
30
31
32
33
34
35
36
37
···
92
下一页
2016年2月24日
深入浅出Java并发包—锁机制(一)
摘要: 前面我们看到了Lock和synchronized都能正常的保证数据的一致性(上文例子中执行的结果都是20000000),也看到了Lock的优势,那究竟他们是什么原理来保障的呢?今天我们就来探讨下Java中的锁机制! Synchronized是基于JVM来保证数据同步的,而Lock则是在硬件层面,依赖
阅读全文
posted @ 2016-02-24 17:33 人生设计师
阅读(29752)
评论(0)
推荐(1)
2016年2月23日
深入浅出Java并发包—锁(Lock)VS同步(synchronized)
摘要: 今天我们来探讨一下Java中的锁机制。前面我们提到,在JDK1.5之前只能通过synchronized关键字来实现同步,这个前面我们已经提到是属于独占锁,性能并不高,因此JDK1.5之后开始借助JNI实现了一套高效的锁实现! JDK5以后锁的接口是JUC中的Lock,我们来先看一下他的相关API文档
阅读全文
posted @ 2016-02-23 22:41 人生设计师
阅读(2078)
评论(0)
推荐(0)
深入浅出Java并发包—CAS机制
摘要: 在JDK1.5之前。Java主要靠synchronized这个关键字保证同步,已解决多线程下的线程不安全问题,但是这会导致锁的发生,会引发一些个性能问题。 锁主要存在一下问题 (1)在多线程竞争下,加锁、释放锁会导致比较多的上下文切换和调度延时,引起性能问题。 (2)一个线程持有锁会导致其它所有需要
阅读全文
posted @ 2016-02-23 22:37 人生设计师
阅读(6472)
评论(1)
推荐(0)
深入浅出Java并发包—指令重排序
摘要: 前面大致提到了JDK中的一些个原子类,也提到原子类是并发的基础,更提到所谓的线程安全,其实这些类或者并发包中的这么一些类,都是为了保证系统在运行时是线程安全的,那到底怎么样才算是线程安全呢? Java并发与实践一书中提出,当多个线程同时访问一个类的时候,如果不用考虑这些线程在运行时环境下的调度和交替
阅读全文
posted @ 2016-02-23 22:36 人生设计师
阅读(9048)
评论(0)
推荐(0)
深入浅出Java并发包—原子类操作
摘要: 我们知道,JDK1.5以后引入了并发包(java.util.concurrent)用于解决多CPU时代的并发问题,而并发包中的类大部分是基于Queue的并发类,Queue在大多数情况下使用了原子类(Atomic)操作,因此要了解Concurrent包首先要了解Atomic类。 在很多时候,我们需要的
阅读全文
posted @ 2016-02-23 22:30 人生设计师
阅读(1409)
评论(0)
推荐(0)
Java并发包中常用类小结(三)
摘要: 9、Semaphore Semaphore是并发包中用于控制某个资源访问个数的类,例如数据库的连接池,我们用代码来演示一下一个连接池的实现: package com.yhj.container.concurrent; import java.util.ArrayList; import java.u
阅读全文
posted @ 2016-02-23 22:18 人生设计师
阅读(877)
评论(0)
推荐(0)
Java并发包中常用类小结(二)
摘要: 6、ThredPoolExecutor ThredPoolExecutor是基于命令模式下的一个典型的线程池的实现,主要通过一些策略实现一个典型的线程池,目前已知的策略有ThreadPoolExecutor.AbortPolicy, ThreadPoolExecutor.CallerRunsPoli
阅读全文
posted @ 2016-02-23 22:12 人生设计师
阅读(1053)
评论(0)
推荐(0)
Java并发包中常用类小结(一)
摘要: 从JDK1.5以后,Java为我们引入了一个并发包,用于解决实际开发中经常用到的并发问题,那我们今天就来简单看一下相关的一些常见类的使用情况。 1、ConcurrentHashMap ConcurrentHashMap其实就是线程安全版本的hashMap。前面我们知道HashMap是以链表的形式存放
阅读全文
posted @ 2016-02-23 21:28 人生设计师
阅读(8786)
评论(2)
推荐(0)
2016年2月21日
java 多线程 CountDownLatch用法
摘要: CountDownLatch,一个同步辅助类,在完成一组正在其他线程中执行的操作之前,它允许一个或多个线程一直等待。 主要方法 public CountDownLatch(int count); public void countDown(); public void await() throws
阅读全文
posted @ 2016-02-21 22:27 人生设计师
阅读(670)
评论(0)
推荐(0)
CAS(Compare and Swap)理解
摘要: 什么叫CAS(Compare and Swap)? 硬件同步原语!! 什么蛋疼的名字,一般人很难理解。根据英文全称翻译==比较与交换,这个名字大致还能理解一点,目前先暂且这么理解吧. 有啥用处? 对于常用多线程编程的人估计知道,对于一般人估计都不曾听说。在jdk5之前,我们知道,在多线程编程的时候,
阅读全文
posted @ 2016-02-21 22:03 人生设计师
阅读(7294)
评论(0)
推荐(0)
上一页
1
···
29
30
31
32
33
34
35
36
37
···
92
下一页
公告