摘要:转自:http://lavasoft.blog.51cto.com/62575/27069/下面是Java线程系列博文的一个编目:Java线程:概念与原理Java线程:创建与启动Java线程:线程栈模型与线程的变量Java线程:线程状态的转换Java线程:线程的同步与锁Java线程:线程的交互Java线程:线程的调度-休眠Java线程:线程的调度-优先级Java线程:线程的调度-让步Java线程:线程的调度-合并Java线程:线程的调度-守护线程Java线程:线程的同步-同步方法Java线程:线程的同步-同步块Java线程:并发协作-生产者消费者模型Java线程:并发协作-死锁Java线程:v
阅读全文
摘要:1、售票程序V1public class TicketSoldV1 { public static void main(String[] args) { TicketWindowV1 r1 = new TicketWindowV1(); TicketWindowV1 r2 = new TicketWindowV1(); TicketWindowV1 r3 = new TicketWindowV1(); new Thread(r1, "A窗口").start(); //启动三个线程窗口 new Thread(r2, "B...
阅读全文
摘要:1、继承Thread类public class MultiThread { public static void main(String[] args) { System.out.println(Thread.currentThread().getName() + "线程开始运行..."); MultiSayThread t1 = new MultiSayThread("A"); MultiSayThread t2 = new MultiSayThread("B"); t1.start(); t2.start(); ...
阅读全文
摘要:一、Java中线程的5种状态在Java中,线程通常都有5种状态:创建、就绪、运行、阻塞和死亡。 1、创建状态(生):线程对象已创建,但没有调用线程对象的start方法。 2、就绪状态(可运行状态):当调用了线程对象的start方法之后,该线程就进入了就绪状态,但是此时线程调度程序还没有把该线程设置为当前线程,即当前线程有资格运行,但是还没有运行。在线程运行之后,从阻塞/等待/睡眠中回来之后,也会处于就绪状态。 3、运行状态:线程调度程序将处于就绪状态的线程设置为当前线程,此时线程就进入了运行状态,开始运行run函数当中的代码。 4、阻塞状态(阻塞/等待/睡眠):线程正在运行的时...
阅读全文
摘要:一、引言由于同一进程的多个线程共享同一片存储空间,在带来方便的同时,也带来了访问冲突这个严重的问题。Java语言提供了专门机制以解决这种冲突,有效避免了同一个数据对象被多个线程同时访问的问题。这套机制就是synchronized关键字,它包括两种用法:synchronized 方法(同步方法)和synchronized语句块(同步语句块)。二、synchronized不同的修饰情况1、synchronized方法(同步方法):synchronized修饰类中的方法,如下所示:class P implements Runnable { public synchronized void me...
阅读全文