主要是使用CountDownLatchCountDownlatch,是一种Sychronizer,它可以延迟线程的进度直到线程的进度到线程到达终止状态。它本身而言是Java并发包中非常有用的一个类,它可以让某些任务完成以后再继续运行下面的内容,每个任务本身执行完毕后让计数器减一,直到计数器清零后,以...
分类:
编程语言 时间:
2015-03-06 18:42:13
阅读次数:
237
1. java.util.concurrent - Java 并发工具包Java 5 添加了一个新的包到 Java 平台,java.util.concurrent 包。这个包包含有一系列能够让 Java 的并发编程变得更加简单轻松的类。在这个包被添加以前,你需要自己去动手实现自己的相关工具类。本文我将带你一一认识 java.util.concurrent 包里的这些类,然后你可以尝试着如何在项目中...
分类:
编程语言 时间:
2015-03-03 09:54:35
阅读次数:
254
声明:原创作品,转载时请注明文章来自SAP师太技术博客:www.cnblogs.com/jiangzhengjun,并以超链接形式标明文章原始出处,否则将追究法律责任!原文链接:http://www.cnblogs.com/jiangzhengjun/p/4289498.html共享对象... 4可...
分类:
编程语言 时间:
2015-02-13 06:58:05
阅读次数:
349
非安全:
@NotThreadSafe
public class UnsafeCountingFactorizer extends GenericServlet implements Servlet {
private long count = 0;
public long getCount() {
return count;
}
public...
分类:
编程语言 时间:
2015-02-12 18:25:57
阅读次数:
177
图示
如上图所示红框部分,本人在做稳定性测试的时候,当flume运行几天后,我发现这个counter值逐渐变大,到一定值后,又变小了,有一个循环的过程,故而对此产生研究的欲望,下面来看看:
if (txnEventCount == 0) {
sinkCounter.incrementBatchEmptyCount();
} else if (txnEvent...
分类:
编程语言 时间:
2015-02-12 10:52:27
阅读次数:
1233
锁的释放-获取建立的happens before 关系锁是java并发编程中最重要的同步机制。锁除了让临界区互斥执行外,还可以让释放锁的线程向获取同一个锁的线程发送消息。下面是锁释放-获取的示例代码:[java]copyclass a=; writer(){} reader(){i=a;……}假设线...
分类:
编程语言 时间:
2015-02-09 18:08:33
阅读次数:
263
这段时间有点忙,技术博客更新的比较少,今天更新一下相关并发的常用线程协作的类吧。ExecutorService线程池,用于创造和复用线程,他有几种模式。我举一个自定义线程池数量的例子如下ExecutorService service = Executors.newFixedThreadPool(10...
分类:
编程语言 时间:
2015-02-04 12:25:47
阅读次数:
143
现在,通过前几篇的总结,我们对Java多线程已经有所了解了,但是都是一些Java并发程序设计基础的底层构建块。对于实际编程来说,我们应该尽可能的远离底层结构。使用那些由并发处理的专业人士实现的较高层次的结构要方便的多,安全的多。
阻塞队列
对于许多线程问题。可以通过使用一个或多个队列以优雅且安全的方式将其形式化。生产者线程向队列插入元素,消费者线程则取出他们。使用队列,可以安全...
分类:
编程语言 时间:
2015-02-03 23:08:11
阅读次数:
489
现在有这样一个任务,有一份手机号列表(20W),有一份话单的列表(10W),要统计哪些手机号没有出现在话单中,哪些手机号在话单中出现了不止一次。
想到的最直接的方式,就是两层循环去遍历,虽然此方法比较笨,但目前还没有想出更好的办法。
一开始使用单线程来处理,代码是随手写的并没有进行重构,只是做一个简单的说明:
package tool;
import java.util.List;
pu...
分类:
编程语言 时间:
2015-02-03 01:55:28
阅读次数:
250
并发程序的编程与设计是一个难点,也是程序员必须掌握的一个点。工作之后写的第一个软件里面也有并发编程,当时在设计并发这块感觉好复杂,最后的实现感觉也有点乱。当时就想好好学习一下并发编程的设计,但是一直没有时间。今年看了两本并发编程相关的书,《多线程设计模式》和《Java并发编程与实战》。本想着和设计模...
分类:
编程语言 时间:
2015-02-01 20:24:11
阅读次数:
248