
java基础-java并发编程
文章平均质量分 84
Mrzhoug
这个作者很懒,什么都没留下…
展开
-
java并发编程(14)--java的守护线程与非守护线程
本文转载自:http://www.cnblogs.com/super-d2/p/3348183.html 尊重原创最近重新研究Java基础知识,发现以前太多知识知识略略带过了,比较说Java的线程机制,在Java中有两类线程:User Thread(用户线程)、Daemon Thread(守护线程) ,(PS:以前忽略了)。估计学过Unix开发但是没有细致学习Java的同学们会疑惑了,操作系统里面是转载 2016-05-04 22:11:40 · 548 阅读 · 0 评论 -
java并发编程(2)--Thread类的使用
本文转载自:http://www.cnblogs.com/dolphin0520/p/3920357.html 尊重原创一.线程的状态在正式学习Thread类中的具体方法之前,我们先来了解一下线程有哪些状态,这个将会有助于后面对Thread类中的方法的理解。线程从创建到最终的消亡,要经历若干个状态。一般来说,线程包括以下这几个状态:创建(new)、就绪(runnable)、运行(running)、转载 2016-04-28 20:45:54 · 677 阅读 · 0 评论 -
java并发编程(3)--java.util.concurrent.*
本文转载自:http://blog.youkuaiyun.com/defonds/article/details/44021605 尊重原创译序本指南根据 Jakob Jenkov 最新博客翻译,请随时关注博客更新:http://tutorials.jenkov.com/java-util-concurrent/index.html。 本指南已做成中英文对照阅读版的 pdf 文档,有兴趣的朋友可以去 Java转载 2016-04-29 13:24:42 · 826 阅读 · 0 评论 -
java并发编程(4)--线程池设计及注意问题
本文转载自:http://blog.youkuaiyun.com/tianxiaogang12/article/details/5942906 尊重原创一般一个简单线程池至少包含下列组成部分。1.线程池管理器(ThreadPoolManager):用于创建并管理线程池 2.工作线程(WorkThread): 线程池中线程 3.任务接口(Task):每个任务必须实现的接口,以供工作线程调度任务的执行。 4转载 2016-04-29 22:10:01 · 486 阅读 · 0 评论 -
java并发编程(5)--线程池的使用
本文转载自: http://www.cnblogs.com/dolphin0520/p/3932921.html 尊重原创在前面的文章中,我们使用线程的时候就去创建一个线程,这样实现起来非常简便,但是就会有一个问题: 如果并发的线程数量很多,并且每个线程都是执行一个时间很短的任务就结束了,这样频繁创建线程就会大大降低系统的效率,因为频繁创建线程和销毁线程需要时间。 那么有没有一种办法使得线程可转载 2016-05-01 21:28:33 · 562 阅读 · 0 评论 -
java并发编程(6)--synchronized
本文转载自:http://www.cnblogs.com/dolphin0520/p/3923737.html 尊重原创虽然多线程编程极大地提高了效率,但是也会带来一定的隐患。比如说两个线程同时往一个数据库表中插入不重复的数据,就可能会导致数据库中插入了相同的数据。今天我们就来一起讨论下线程安全问题,以及Java中提供了什么机制来解决线程安全问题。以下是本文的目录大纲:一.什么时候会出现线程安全问转载 2016-05-02 13:49:36 · 470 阅读 · 0 评论 -
java并发编程(7)--Lock
本文转载自:http://www.cnblogs.com/dolphin0520/p/3923167.html 尊重原创在上一篇文章中我们讲到了如何使用关键字synchronized来实现同步访问。本文我们继续来探讨这个问题,从Java 5之后,在java.util.concurrent.locks包下提供了另外一种方式来实现同步访问,那就是Lock。也许有朋友会问,既然都可以通过synchroni转载 2016-05-02 16:53:32 · 376 阅读 · 0 评论 -
java并发编程(8)--volatile
本文转载自:http://www.cnblogs.com/dolphin0520/p/3920373.html 尊重原创volatile这个关键字可能很多朋友都听说过,或许也都用过。在Java 5之前,它是一个备受争议的关键字,因为在程序中使用它往往会导致出人意料的结果。在Java 5之后,volatile关键字才得以重获生机。volatile关键字虽然从字面上理解起来比较简单,但是要用好不是一件容转载 2016-05-03 22:51:14 · 441 阅读 · 0 评论 -
java并发编程(9)--深入剖析ThreadLocal
本文转载自:http://www.cnblogs.com/dolphin0520/p/3920407.html 尊重原创想必很多朋友对ThreadLocal并不陌生,今天我们就来一起探讨下ThreadLocal的使用方法和实现原理。首先,本文先谈一下对ThreadLocal的理解,然后根据ThreadLocal类的源码分析了其实现原理和使用需要注意的地方,最后给出了两个应用场景。以下是本文目录大纲:转载 2016-05-04 12:56:49 · 511 阅读 · 0 评论 -
java并发编程(10)--同步容器
本文转载自:http://www.cnblogs.com/dolphin0520/p/3933404.html 尊重原创为了方便编写出线程安全的程序,Java里面提供了一些线程安全类和并发工具,比如:同步容器、并发容器、阻塞队列、Synchronizer(比如CountDownLatch)。今天我们就来讨论下同步容器。以下是本文的目录大纲:一.为什么会出现同步容器?二.Java中的同步容器类三.同步转载 2016-05-04 13:57:32 · 681 阅读 · 0 评论 -
java并发编程(11)--并发容器ConcurrentHashMap和CopyOnWriteArrayList
本文转载自:http://www.cnblogs.com/dolphin0520/p/3932905.html 尊重原创JDK5中添加了新的concurrent包,相对同步容器而言,并发容器通过一些机制改进了并发性能。因为同步容器将所有对容器状态的访问都串行化了,这样保证了线程的安全性,所以这种方法的代价就是严重降低了并发性,当多个线程竞争容器时,吞吐量严重降低。因此Java5.0开始针对多线程并发转载 2016-05-04 19:04:11 · 807 阅读 · 0 评论 -
java并发编程(12)--阻塞队列
本文转载自:http://www.cnblogs.com/dolphin0520/p/3932906.html 尊重原创在前面几篇文章中,我们讨论了同步容器(Hashtable、Vector),也讨论了并发容器(ConcurrentHashMap、CopyOnWriteArrayList),这些工具都为我们编写多线程程序提供了很大的方便。今天我们来讨论另外一类容器:阻塞队列。在前面我们接触的队列都是转载 2016-05-04 20:50:34 · 534 阅读 · 0 评论 -
java并发编程(13)--线程间协作的两种方式:wait、notify、notifyAll和Condition
本文转载自:http://www.cnblogs.com/dolphin0520/p/3920385.html 尊重原创在前面我们将了很多关于同步的问题,然而在现实中,需要线程之间的协作。比如说最经典的生产者-消费者模型:当队列满时,生产者需要等待队列有空间才能继续往里面放入商品,而在等待的期间内,生产者必须释放对临界资源(即队列)的占用权。因为生产者如果不释放对临界资源的占用权,那么消费者就无法转载 2016-05-04 21:56:32 · 711 阅读 · 0 评论 -
java并发编程(1)--线程基础知识
本文转载自:http://www.cnblogs.com/dolphin0520/p/3913517.html 尊重原创一.操作系统中为什么会出现进程?说起进程的由来,我们需要从操作系统的发展历史谈起。也许在今天,我们无法想象在很多年以前计算机是什么样子。我们现在可以用计算机来做很多事情:办公、娱乐、上网,但是在计算机刚出现的时候,是为了解决数学计算的问题,因为很多大量的计算通过人力去完成是很耗时间转载 2016-04-28 15:24:33 · 533 阅读 · 0 评论