本月博客排行
-
第1名
龙儿筝 -
第2名
lerf -
第3名
fantaxy025025 - johnsmith9th
- xiangjie88
- zysnba
年度博客排行
-
第1名
青否云后端云 -
第2名
宏天软件 -
第3名
gashero - wy_19921005
- vipbooks
- benladeng5225
- e_e
- wallimn
- javashop
- ranbuijj
- fantaxy025025
- jickcai
- gengyun12
- zw7534313
- qepwqnp
- 解宜然
- ssydxa219
- zysnba
- sam123456gz
- sichunli_030
- arpenker
- tanling8334
- gaojingsong
- kaizi1992
- xpenxpen
- 龙儿筝
- jh108020
- wiseboyloves
- ganxueyun
- xyuma
- xiangjie88
- wangchen.ily
- Jameslyy
- luxurioust
- lemonhandsome
- mengjichen
- jbosscn
- zxq_2017
- lzyfn123
- nychen2000
- forestqqqq
- wjianwei666
- ajinn
- zhanjia
- siemens800
- Xeden
- hanbaohong
- java-007
- 喧嚣求静
- mwhgJava
最新文章列表
Java并发框架(Concurrency)
原文:http://www.groovyq.net/content/java并发框架回顾
Java并发框架java.util.concurrent是JDK5中引入到标准库中的(采用的是Doug Lea的并发库)。该包下的类可以分为这么块:
Executors
1)接口:
Executor(例子涉及):用来执行提交的Runnable任务的对象。是一个简单的标准化接口,用来定义包括线程池、异步IO、 ...
51、java.util.concurrent 包及其常用类
一、软件包 java.util.concurrent
在并发编程中很常用的实用工具类。
二、java.util.concurrent.Executors
/**
* Executors
* 此包中所定义的 Executor、ExecutorService、ScheduledExecutorService、ThreadFactory 和 Callable 类的工厂和实用方法 ...
LinkedBlockingDeque 源码分析
LinkedBlockingDeque是LinkedList通过ReentrantLock来实现线程安全以及阻塞,大部分方法都加了锁。
1. 构造方法
public LinkedBlockingDeque() {
this(Integer.MAX_VALUE);
}
public LinkedBlockingDeque(int cap ...
ScheduledExecutorService 源码分析
public interface ScheduledExecutorService extends ExecutorService {
// 创建在指定延迟后执行且只运行一次的的任务
public ScheduledFuture<?> schedule(Runnable command,
long delay, TimeUnit unit);
...
ExecutorService 分析
public interface ExecutorService extends Executor {
// 优雅地关闭:先前提交的任务会继续执行完成,但不接受新的任务。
// 对于已关闭的ExecutorService没有影响。
void shutdown();
// 强行关闭:试图停止所有正在执行的任务,挂起等待执行的任务,返回等待执行任务的清单, ...
Netty ChannelFactory
最近在用Netty帮助业务开发封装一个通讯组件的时候,关于ChannelFactory发现了一些问题,暂时纪录如下:
1 - 内存泄漏问题
梁飞的博客中提到了Netty的ChannelFactory在不断的销毁和创建过程中,会出现内存泄漏的问题,从而在dubbo中采用静态化的方式来规避这个问题(原文:http://javatar.iteye.com/blog/1138527)。但是我的开 ...
java同步例子之CyclicBarrier
它允许一组线程互相等待,直到到达某个公共屏障点,barrier 在释放等待线程后可以重用,所以称它为循环 的 barrier。
package concurrent;
import java.util.concurrent.BrokenBarrierException;
import java.util.concurrent.CyclicBarrier;
/**
* 允许一组线程互 ...
java同步例子之信号量(Semaphore)
信号量维护了一个许可集。如有必要,在许可可用前会阻塞每一个 acquire(),然后再获取该许可。每个 release() 添加一个许可,从而可能释放一个正在阻塞的获取者。
package concurrent;
import java.util.Collections;
import java.util.HashSet;
import java.util.Set;
import jav ...
java同步例子之FutureTask
仅在计算完成时才能获取结果;如果计算尚未完成,则阻塞 get 方法。一旦计算完成,就不能再重新开始或取消计算.
package concurrent;
import java.util.concurrent.Callable;
import java.util.concurrent.ExecutionException;
import java.util.concurrent.Futu ...
java同步例子之闭锁(CountDownLatch)
在完成一组正在其他线程中执行的操作之前,它允许一个或多个线程一直等待,在某些场景下同CyclicBarrier类似。
package concurrent;
import java.util.concurrent.CountDownLatch;
/**
* 闭锁,要关注await,countDown的异常,
* @author user
*
*/
public cl ...
Java多线程之 concurrent 并发包
Java Tutorials -> Concurrency:
http://docs.oracle.com/javase/tutorial/essential/concurrency/index.html
Java Concurrency Utilities:
http://docs.oracle.com/javase/7/docs/technotes/guides/concurren ...
Finding Exploitable Parallelism
6.3. Finding Exploitable Parallelism
The Executor framework makes it easy to specify an execution policy, but in order to use an Executor, you have to be able to describe your task as a Runnable. In mo ...