Java多线程
余建新-18588497759
这个作者很懒,什么都没留下…
展开
-
10-java5的线程锁技术
一、主要内容 jdk1.5提供的线程锁。 二、代码 import java.util.concurrent.locks.Lock; import java.util.concurrent.locks.ReentrantLock; public class LockTest { public static void main(String[] args) { new Loc原创 2015-03-25 23:05:37 · 496 阅读 · 0 评论 -
16-Exchanger使用
一、主要内容 Exchanger使用。同一时刻,互相交换内容后,才继续往下进行。 二、代码 import java.util.concurrent.Exchanger; import java.util.concurrent.ExecutorService; import java.util.concurrent.Executors; public class Exchan原创 2015-03-29 21:04:13 · 373 阅读 · 0 评论 -
4-使用synchronized实现线程间通信-实现线程间通信方式(1)
一、主要内容 实现子线程运行10次,主线程运行100次,子线程、主线程交替进行,此过程循环进行50次。 二、代码实现 package cn.yjx.thread; public class TraditionalThreadCommunication { public static void main(String[] args) { final Business b原创 2015-03-23 01:08:27 · 695 阅读 · 0 评论 -
2-传统定时器技术
一、主要内容 传统定时器技术 二、代码实现 package cn.itcast.heima2; import java.text.SimpleDateFormat; import java.util.Date; import java.util.Timer; import java.util.TimerTask; public class TraditionalTimerTe原创 2015-03-22 07:30:33 · 560 阅读 · 0 评论 -
5-线程范围内共享变量
一、主要内容 线程范围内共享变量。 二、代码实现 package cn.itcast.heima2; import java.util.HashMap; import java.util.Map; import java.util.Random; public class ThreadScopeShareData { private static int data = 0原创 2015-03-23 01:57:57 · 541 阅读 · 0 评论 -
20-BlockingQueue应用
一、主要内容 BlockingQueue提高程序效率。 二、代码 import java.util.concurrent.ArrayBlockingQueue; import java.util.concurrent.BlockingQueue; public class Test1 { public static void main(String[] args) { f原创 2015-03-31 05:53:27 · 616 阅读 · 0 评论 -
22-CopyOnWriteArrayList应用
一、主要内容 CopyOnWriteArrayList应用。 代码实现相同key的对象,不能同时刻运行;不同key,可以。 二、代码 import java.util.Iterator; import java.util.concurrent.CopyOnWriteArrayList; // 不能改动此Test类 public class Test extends Th原创 2015-03-31 06:51:09 · 425 阅读 · 0 评论 -
21-Semaphore应用
一、主要内容 Semaphore信号量实现有序消费。 二、代码 import java.util.concurrent.Semaphore; import java.util.concurrent.SynchronousQueue; public class Test2 { public static void main(String[] args) { final Se原创 2015-03-31 06:12:47 · 472 阅读 · 0 评论 -
6-ThreadLocal类
一、主要内容 ThreadLocal类。 二、代码 import java.util.Random; public class ThreadLocalTest { private static ThreadLocal x = new ThreadLocal(); // private static ThreadLocal myThreadScopeData = new Thre原创 2015-03-24 04:52:38 · 381 阅读 · 0 评论 -
7-多个线程之间共享数据
一、主要内容 启动4个线程,两个线程对共享变量+1,两个线程对共享变量-1。 二、代码实现 public class MultiThreadShareData { private static ShareData1 data1 = new ShareData1(); public static void main(String[] args) { // 方式1,da原创 2015-03-24 05:16:40 · 471 阅读 · 0 评论 -
8-java5线程并发库的应用
一、主要内容 jdk1.5提供的线程并发库。 二、代码实现 import java.util.concurrent.ExecutorService; import java.util.concurrent.Executors; import java.util.concurrent.TimeUnit; public class ThreadPoolTest { public s原创 2015-03-24 05:52:39 · 612 阅读 · 0 评论 -
17-java5阻塞队列的应用
一、主要内容 ArrayBlockingQueue、BlockingQueue使用。 二、代码 import java.util.concurrent.ArrayBlockingQueue; import java.util.concurrent.BlockingQueue; public class BlockingQueueTest { public stat原创 2015-03-29 22:53:09 · 557 阅读 · 0 评论 -
10-Callable与Future的应用
一、主要内容 jdk1.5提供的线程并发库。 二、代码实现 import java.util.Random; import java.util.concurrent.Callable; import java.util.concurrent.CompletionService; import java.util.concurrent.ExecutionException; imp原创 2015-03-24 06:07:24 · 428 阅读 · 0 评论 -
19-java5同步集合类
一、主要内容 java5提供了同步集合类,在多线程访问集合时使用。 二、代码 import java.util.Collection; import java.util.Iterator; import java.util.concurrent.CopyOnWriteArrayList; public class CollectionModifyExceptionTest {原创 2015-03-30 07:35:54 · 758 阅读 · 0 评论 -
11-java5读写锁技术
一、主要内容 jdk1.5提供的读写锁。 下面模拟一个缓存类,示意图: 二、代码 import java.util.Random; import java.util.concurrent.locks.ReadWriteLock; import java.util.concurrent.locks.ReentrantReadWriteLock; public原创 2015-03-26 06:21:19 · 573 阅读 · 0 评论 -
12-2-多condition实现可阻塞消息队列
一、主要内容 二、代码 class BoundedBuffer { final Lock lock = new ReentrantLock(); // 线程间同步 final Condition notFull = lock.newCondition(); // 线程间通信 final Condition notEmpty = lock.newCondition(原创 2015-03-26 07:22:01 · 612 阅读 · 0 评论 -
12-3-三个condition实现3个线程间通信
一、主要内容 使用3个condition变量,实现main thread、sub2 thread、sub3 thread依次运行10次、20次、30次,此过程循环进行50次。 二、代码 import java.util.concurrent.locks.Condition; import java.util.concurrent.locks.Lock; import java.uti原创 2015-03-26 23:17:00 · 631 阅读 · 0 评论 -
13-Semaphore使用
一、主要内容 Semaphore使用 二、代码 import java.util.concurrent.ExecutorService; import java.util.concurrent.Executors; import java.util.concurrent.Semaphore; public class SemaphoreTest { public stat原创 2015-03-29 01:05:09 · 463 阅读 · 0 评论 -
14-CyclicBarrier使用
一、主要内容 CyclicBarrier使用 二、代码 import java.util.concurrent.CyclicBarrier; import java.util.concurrent.ExecutorService; import java.util.concurrent.Executors; public class CyclicBarrierTest {原创 2015-03-29 01:17:09 · 492 阅读 · 0 评论 -
Java多线程之生产者消费者实例
实例说明: 实例代码: package multithread.zxx.yjx; public class ProducerConsumerTest { public static void main(String[] args) { new ProducerConsumerTest().init(); } private void init() { Food原创 2015-01-06 21:17:52 · 975 阅读 · 0 评论 -
1-传统多线程技术
一、主要内容 实现多线程的两种方式 二、代码实现 package cn.yjx.thread; public class TraditionalThread { public static void main(String[] args) { // 主线程 try { Thread.sleep(500); } catch (InterruptedEx原创 2015-03-22 07:03:36 · 626 阅读 · 0 评论 -
3-传统线程互斥技术
一、主要内容 传统线程互斥技术,synchronized的使用。synchronized,对对象加锁,只允许一个线程对变量进行操作。 二、代码实现 package cn.yjx.thread; public class TraditionalThreadSynchronized { public static void main(String[] args) { new Tra原创 2015-03-22 08:26:42 · 573 阅读 · 0 评论 -
12-使用java5条件阻塞condition实现线程间通信-实现线程间通信方式(2)
一、主要内容 jdk1.5并发库中的Lock提供了类似传统Synchronized的同步锁机制,但无法实现线程间通信;Condition则实现线程间通信。 demo:实现子线程运行10次,主线程运行100次,子线程、主线程交替进行,此过程循环进行50次。 二、代码 import java.util.concurrent.locks.Condition; import java.原创 2015-03-26 06:47:45 · 631 阅读 · 0 评论 -
18-java5阻塞队列实现线程间通信-实现线程间通信方式(3)
一、主要内容 实现子线程运行10次,主线程运行100次,子线程、主线程交替进行,此过程循环进行50次。 二、代码 import java.util.concurrent.ArrayBlockingQueue; import java.util.concurrent.BlockingQueue; public class BlockingQueueCommunication {原创 2015-03-30 05:34:46 · 711 阅读 · 0 评论 -
15-CountDownLatch使用
一、主要内容 CountDownLatch使用 二、代码 import java.util.concurrent.CountDownLatch; import java.util.concurrent.ExecutorService; import java.util.concurrent.Executors; public class CountdownLatchTest原创 2015-03-29 01:56:38 · 495 阅读 · 0 评论