知识大全 Java线程控制权源代码的深入探讨

Posted

篇首语:亦余心之所善兮,虽九死其犹未悔。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 Java线程控制权源代码的深入探讨相关的知识,希望对你有一定的参考价值。

Java线程控制权源代码的深入探讨  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!

  Java线程控制权的问题十分重要 我们在不断的学习中需要不断的注意相关的问题 下面我们就来看看在源代码中Java <>线程控制权式如何体现的 当wait的时候其实就是已经放出了线程的控制权 所以one可以运行 one运行时调用notify后又唤醒了o线程所以打印顺序才是

  wait

  sleep

  wake up

  我觉得我解释的已经很清楚了 wait被调用的时候放弃锁 而控制线程是否能使用内容的关键就在于锁 wait并不是thread的内容 而来自于object 你可以这样来理解wait 我wait下就把接力棒交出去了 我当前的这个线程就暂停运行 记住是当前的线程 然后当我交出的接力棒已经又回到我手中的时候 也就是说其他的线程已经完成了任务 这个时候我拿到接力棒继续奔跑

  有时候你应该把问题简单化 建议你看看thinking in java第四版 我明白你是想观察阻塞的出现 你可以将one start放到o start的上边就会明白什么意思了

   package test;

   import java util LinkedList;

   public class Test_ _A

   public static void main(String[] args)

   SubTreadOne one = new SubTreadOne();

   SubTreadTwo o = new SubTreadTwo(one);

   o start();

   try

   Thread sleep( );

   catch (InterruptedException e)

   e printStackTrace();

  

   one start();

  

  

   class SubTreadOne extends Thread

   public SubTreadOne()

  

   public void run()

   try

   System out println( sleep );

   Thread sleep( );

   synchronized (this)

   this notifyAll();

  

   catch (InterruptedException e)

   e printStackTrace();

  

  

  

   class SubTreadTwo extends Thread

   SubTreadOne one;

   public SubTreadTwo(SubTreadOne one)

   this one = one;

  

   public SubTreadTwo()

  

   public void run()

   try

   synchronized (one)

   System out println( wait );

   one wait();

   System out println( wake up );

  

   catch (InterruptedException e)

   e printStackTrace();

  

  

  

cha138/Article/program/Java/hx/201311/25676

相关参考

知识大全 Java线程知识深入解析

Java线程知识深入解析  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  一般来说我们把正在计算机

知识大全 Java语言深入 多线程程序模型研究

Java语言深入多线程程序模型研究  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  多线程是较复杂

知识大全 Java多线程之ConcurrentHashMap深入分析

Java多线程之ConcurrentHashMap深入分析  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一

知识大全 Java多线程之volatile深入分析

Java多线程之volatile深入分析  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  vola

知识大全 Java多线程(五)之BlockingQueue深入分析

Java多线程(五)之BlockingQueue深入分析  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下

知识大全 Java代码构建一个线程池

Java代码构建一个线程池  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  本示例程序由三个类构成

知识大全 Java Runnable线程如何编写接口代码

JavaRunnable线程如何编写接口代码  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  Ja

知识大全 典型Java线程池的代码及其各部分功能介绍

典型Java线程池的代码及其各部分功能介绍  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  ()根

知识大全 Java语言深入:编写高级JScript代码

Java语言深入:编写高级JScript代码  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  创建

知识大全 Java-多线程组的控制

Java-多线程组的控制  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  classNewThre