![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Java Thread 多线程
文章平均质量分 80
iteye_7333
这个作者很懒,什么都没留下…
展开
-
Java 多线程例子1 小例子
学习的张孝祥的《Java就业培训教程》觉得讲的不错,是比较好的入门教程吧。下面是最简单的例子。public class ThreadDemo { public static void main(String[] args) { new TestThread().start(); while(true) { System.out.println("main(): "+...原创 2010-07-16 14:51:40 · 57 阅读 · 0 评论 -
java多线程 BlockingQueue 和 SynchronousQueues
参考:http://www.ibm.com/developerworks/cn/java/j-5things4.html【关于 java.util.concurrent 您不知道的 5 件事,第 1 部分】1,BlockingQueue public class ABQApp { public static void main(String[] args) { Blockin...原创 2010-07-20 15:30:06 · 108 阅读 · 0 评论 -
java多线程 Semaphore CountDownLatch ScheduledExecutorService
参考:http://www.ibm.com/developerworks/cn/java/j-5things5.html【关于 java.util.concurrent 您不知道的 5 件事,第 2 部分】1,Semaphore适用于:限制未处理的特定资源请求(线程/操作)数量。public class SemApp { public static void main(S...原创 2010-07-20 17:06:06 · 165 阅读 · 0 评论 -
多线程 CyclicBarrier
原文:http://blog.csdn.net/qian_348840260/archive/2010/01/23/5247579.aspx1,一个例子/** * CyclicBarrier维持一个计数器,与CountDownLatch不同的是,等待这个CyclicBarrier的线程必须等到计数器 * 的某个值时,才可以继续. * CyclicBarrier就像它名字的意思一...原创 2010-07-20 19:38:00 · 71 阅读 · 0 评论 -
【转载】DelayQueue 的使用
原文:http://ideasforjava.iteye.com/blog/657384DelayQueue是一个无界的BlockingQueue,用于放置实现了Delayed接口的对象,其中的对象只能在其到期时才能从队列中取走。这种队列是有序的,即队头对象的延迟到期时间最长。注意:不能将null元素放置到这种队列中。 Delayed 一种混合风格的接口,用来标记那些应该在...原创 2010-07-20 20:15:07 · 63 阅读 · 0 评论 -
【转载】java Timer TimerTask
1,TimerTimer的实质上就是一个多线程,从它的类中可以看出:private TimerThread thread = new TimerThread(queue);它适用于与时间相关的一些操作,多长时间后运行某个动作,间隔运行某个动作。如:时钟程序我们要每一秒中就刷新一下我们的指针,如,模拟心脏的跳动,Timer都是不错的选择。 2,Timer的线程设置成后台线程p...原创 2010-07-22 11:31:15 · 172 阅读 · 0 评论 -
java Thread 停止 开始 暂停
1,写了一个小程序:public class TestThread { public static void main(String[] args) { Thread1 t = new Thread1(); Thread c = new Control(t); t.setSleep(true); c.setDaemon(true); t.start...原创 2010-07-23 15:07:07 · 497 阅读 · 0 评论 -
Java 多线程例子10 线程之间通信 wait notify notifyAll
回答问题:http://www.iteye.com/problems/46763有三方:厂家,电脑城,顾客 厂家2个,一个生产主板,一个生产显卡。 顾客有2个,他们各自不断购买主板和显卡。 电脑城有一个,卖显卡和主板。 class ComputerCenter { private static Object VIDEO = new Object(); private stati...原创 2010-07-26 11:24:38 · 92 阅读 · 0 评论 -
多线程构造函数
http://hi.baidu.com/tengxiaofei001/item/a995a9269023c60b77272c00 写道1. 在构造函数一开始,this就是可用的了。 2. 构造函数和普通函数一样,并不是默认被synchronized 的,有可能出现同步问题。 3. 如果构造函数中访问静态变量的话,必须同步这个静态变量,否则一定会出问题。 4. 如果只访问成员变量的话,无论在任...原创 2014-04-04 11:50:11 · 426 阅读 · 0 评论 -
关于volatile
Volatile修饰的成员变量在每次被线程访问时,都强迫从共享内存中重读该成员变量的值。而且,当成员变量发生变化时,强迫线程将变化值回写到共享内存。这样在任何时刻,两个不同的线程总是看到某个成员变量的同一个值。Java语言规范中指出:为了获得最佳速度,允许线程保存共享成员变量的私有拷贝,而且只当线程进入或者离开同步代码块时才与共享成员变量的原始值对比。这样当多个线程同时与某个对象交互时,就必须要注...原创 2013-01-28 13:24:13 · 98 阅读 · 0 评论 -
利用多核CPU计算大的列表中的整数和 CyclicBarrier CountDownLatch ExecutorService
原文:http://flysnow.iteye.com/blog/711162原文利用了CyclicBarrier、ExecutorService和Callable技术,这些我还不是太懂。将原实现改了一下 public class CountListIntegerSum1 { private Long sum=0L;//存放整数的和 private List<Intege...原创 2010-07-20 14:12:10 · 156 阅读 · 0 评论 -
JDK 7 中的 Fork/Join 模式
参考1:http://www.ibm.com/developerworks/cn/java/j-lo-forkjoin/#list1JDK 7 中的 Fork/Join 模式 参考2:http://www.ibm.com/developerworks/cn/java/j-jtp11137.htmlJava 理论与实践: 应用 fork-join 框架参考3:http://www.i...原创 2010-07-20 10:59:39 · 71 阅读 · 0 评论 -
Java 多线程例子2 前台线程(用户线程) 后台线程(守护线程 ) setDaemon
1,setDaemon(true)后就是后台线程(守护线程 ),反之就是前台线程(用户线程)2,后台线程 和 前台线程的区别:在java程序中如果所以的前台线程都已经退出,所有的后台线程自动退出。TestThread为后台线程:public class ThreadDemo { public static void main(String[] args) { Thread t...原创 2010-07-16 15:16:48 · 159 阅读 · 0 评论 -
Java 多线程例子3 联合线程 join()
1,联合线程实际上就是把多线程又联合成了一个线程,但这里还是要比单线程灵活很多,比如说,我可以让一个线程到运行到某一个条件再联合其他线程。当前线程与其他线程联合在一起,又一种让出cpu,而且直到别个线程运行完,当然,这里join()还可以传入时间以控制联合的时间。a,直接联合:public class ThreadDemo { public static void main(Strin...原创 2010-07-16 17:57:39 · 180 阅读 · 0 评论 -
Java 多线程例子4 继承Thread 实现Runnable
1,Runnable例子class ThreadDemo { public static void main(String[] args) { TestThread t = new TestThread(); new Thread(t).start(); new Thread(t).start(); new Thread(t).start(); new Thr...原创 2010-07-16 19:48:45 · 94 阅读 · 0 评论 -
Java 多线程例子5 实际例子的讨论
1,网络聊天程序,如QQ。发送信息和接受信息肯定要连个线程,你不可能自己输入发送信息的时候就不能接受对方的信息了。 2,图形界面程序。要说多线程用的最多的恐怕就要数图形程序了,图形程序每隔一段时间就要刷新一次,要不然大家是看不到图形的。 3,www网络服务器。不可能每个网页只能在一个时间内让一个访问,实际上,网络服务器会为每个访问者建立一个专属的线程。 其实,线...原创 2010-07-18 15:18:12 · 81 阅读 · 0 评论 -
Java 多线程例子6 线程安全 线程同步 同步代码块 同步函数
线程安全出现线程安全就是在使用多线程的时候程序出现了不期望的结果。怎样思考线程安全:线程中任何一步运行完都可能交出CPU的控制权。下面是一个可能出现线程安全的例子:class ThreadDemo { public static void main(String[] args) { TestThread t = new TestThread(); new Threa...原创 2010-07-18 18:06:48 · 91 阅读 · 0 评论 -
Java 多线程例子7 线程安全 死锁
死锁:在多个线程里对多个同步对象具有循环依赖时常会出现死锁。最简单的死锁例子就是线程一得到了A对象的锁旗标想得到B对象的锁旗标,线程二得到了B对象的锁旗标想得到A对象的锁旗标,这样线程一和线程二就形成了死锁。例子: class ThreadDemo { public static void main(String[] args) { TestThread t = new Te...原创 2010-07-19 17:07:45 · 88 阅读 · 0 评论 -
Java 多线程例子8 线程状态
原文:http://shihaiyang.iteye.com/blog/437902在JDK的电子书中搜索Thread.State可以找到。public static enum Thread.Stateextends Enum<Thread.State>线程状态。线程可以处于下列状态之一: 1.NEW 至今尚未启动的线程的状态。 2.RUNNABLE 可运行线程的线程状态。处于...原创 2010-07-19 17:27:47 · 220 阅读 · 0 评论 -
Java 多线程例子9 线程之间通信 wait notify notifyAll
下面参照《Java就业培训教材》写了一个相似的线程之间通信的例子,程序实现了一个生产者和一个消费者,还有一个buffer用于存放生产出来的一个对象,buffer中只可以存放一个对象,buffer有一个标志位bFull,如果标志位为true表示buffer里有数值,如果bFull为false表示没有数值。buffer中的对象有两个属性,在多线程中如果不处理同步的话,可能出现属性不对应的情况。wa...原创 2010-07-19 20:07:10 · 91 阅读 · 0 评论 -
Java 多线程例子10 控制线程的生命 stop
在Thread类中stop已经不推荐大家使用了,因为使用stop停止的线程不安全,它并不会释放被该线程锁定的对象的锁旗标,这样其它线程如果也想要得到该对象的锁旗标就永远得不到了,形成死锁了。利用标志位控制线程的生命周期:public class ThreadDemo { public static void main(String[] args) { ThreadTest t =...原创 2010-07-19 21:13:02 · 58 阅读 · 0 评论 -
多线程的Wait返回它等待的下方
多线程的Wait返回它等待的下方。 Java Code 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869 package org.vocano.java.t...原创 2014-08-15 14:16:15 · 117 阅读 · 0 评论