Java多线程
文章平均质量分 76
nicolas9974
这个作者很懒,什么都没留下…
展开
-
Java多线程 创建线程的两种方法
package test;class DemoOne extends Thread { public void run() { for(int i = 0;i < 60; i++) System.out.println("DemoOne " + i);// System.out.println("Demo Run"); }}class DemoTwo extends原创 2015-06-16 17:30:46 · 421 阅读 · 0 评论 -
Java多线程 synchronized锁的应用
1.当变量(Object对象)被加上synchronized锁,同一时间只允许一个线程在synchronized内的代码块2.被synchronized修饰的方法,相当于给方法上锁,同一时间只允许一个线程调用该方法 对于非静态方法,synchronized上锁的实际上是 this变量 对于静态方法,synchronized上锁的实际上是 Class变量原创 2015-06-17 22:25:13 · 380 阅读 · 0 评论 -
Java多线程 小知识 守护线程(后台线程)setDaemon、join方法、优先级、yield方法
守护线程就是后台线程, 当前台线程停止运行以后,后台线程就自动停止,Java虚拟机退出。setDaemon(true); //*******必须写在线程启动之前/*stop方法已经过时。如何停止线程?只有一种,run方法结束。开启多线程运行,运行代码通常是循环结构。只要控制住循环,就可以让run方法结束,也就是线程结束。特殊情况:当线程处于了冻结状态。就不会读取原创 2015-06-23 21:37:33 · 434 阅读 · 0 评论 -
Java多线程 多个生产者和多个消费者实现同步 jdk1.4
程序说明:2个生产者,2个消费者, 生产一个商品,消费一个商品(商品有标号)特殊:这里生产者、消费者都有多个, 1. 如果生产者、消费者都是1个,那么flag标记可以用if判断。这里有多个,必须用while判断.2. 在while判断的同时,notify函数可能唤醒本类线程(如一个消费者唤醒另一个消费者),这会导致所有消费者忙等待,程序无法继续往下执行。使用notify原创 2015-06-23 20:46:20 · 1152 阅读 · 0 评论 -
Java多线程 匿名内部类实现多线程
class ThreadTest { public static void main(String[] args) { new Thread() { public void run() { for(int x=0; x<100; x++) { System.out.println(Thread.currentThread().getNam原创 2015-06-23 23:13:59 · 1514 阅读 · 0 评论 -
Java多线程 读写线程同步
程序说明:一个读线程,一个写线程, 有一个缓存池资源写线程写一次到缓存池,读线程读一次输出到控制台。程序效果:控制台 交替输出Jack.....man静静.....女....package test;class Person {}/*效果:控制台 交替输出Jack.....man静静.....女....Resouce资源类,flag表示是否原创 2015-06-23 19:03:16 · 571 阅读 · 0 评论 -
Java多线程 多个生产者和多个消费者实现同步 jdk1.5
jdk1.5用Lock和Condition 代替 jdk1.4 synchronized、wait、notifypackage test;import java.util.concurrent.locks.Condition;import java.util.concurrent.locks.Lock;import java.util.concurrent.locks.Reent原创 2015-06-23 21:11:05 · 438 阅读 · 0 评论 -
Java多线程 线程的停止
Thread提供的Stop已经过时,如何自己手动实现停止线程/*stop方法已经过时。如何停止线程?只有一种,run方法结束。开启多线程运行,运行代码通常是循环结构。只要控制住循环,就可以让run方法结束,也就是线程结束。特殊情况:当线程处于了冻结状态。就不会读取到标记。那么线程就不会结束。当没有指定的方式让冻结的线程恢复到运行状态是,这时需要对冻结进行清除。强制原创 2015-06-23 21:31:01 · 371 阅读 · 0 评论