知识大全 JAVA多线程学习初步经典实例

Posted

篇首语:博观而约取,厚积而薄发。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 JAVA多线程学习初步经典实例相关的知识,希望对你有一定的参考价值。

JAVA多线程学习初步经典实例  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!

  import java io *;

  //多线程编程

  public class MultiThread

  

  public static void main(String args[])

  

  System out println( 我是主线程! );

  //下面创建线程实例thread

  ThreadUseExtends thread =new ThreadUseExtends();

  //创建thread 时以实现了Runnable接口的THhreadUseRunnable类实例为参数

  Thread thread =new Thread(new ThreadUseRunnable() SecondThread );

  thread start();//启动线程thread 使之处于就绪状态

  //thread setPriority( );//设置thread 的优先级为

  //优先级将决定cpu空出时 处于就绪状态的线程谁先占领cpu开始运行

  //优先级范围 到 MIN_PRIORITY MAX_PRIORITY NORM_PAIORITY

  //新线程继承创建她的父线程优先级 父线程通常有普通优先级即 NORM_PRIORITY

  System out println( 主线程将挂起 秒! );

  try

  

  Thread sleep( );//主线程挂起 秒

  

  catch (InterruptedException e)

  

  return;

  

  System out println( 又回到了主线程! );

  if(thread isAlive())

  

  thread stop();//如果thread 还存在则杀掉他

  System out println( thread 休眠过长 主线程杀掉了thread ! );

  

  else

  System out println( 主线程没发现thread thread 已醒顺序执行结束了! );

  thread start();//启动thread

  System out println( 主线程又将挂起 秒! );

  try

  

  Thread sleep( );//主线程挂起 秒

  

  catch (InterruptedException e)

  

  return;

  

  System out println( 又回到了主线程! );

  if(thread isAlive())

  

  thread stop();//如果thread 还存在则杀掉他

  System out println( thread 休眠过长 主线程杀掉了thread ! );

  

  else

  System out println( 主线程没发现thread thread 已醒顺序执行结束了! );

  System out println( 程序结束按任意键继续! );

  try

  

  System in read();

  

  catch (IOException e)

  

  System out println(e toString());

  

  //main

  //MultiThread

  class ThreadUseExtends extends Thread

  //通过继承Thread类 并实现它的抽象方法run()

  //适当时候创建这一Thread子类的实例来实现多线程机制

  //一个线程启动后(也即进入就绪状态)一旦获得CPU将自动调用它的run()方法

  

  ThreadUseExtends()//构造函数

  public void run()

  

  System out println( 我是Thread子类的线程实例! );

  System out println( 我将挂起 秒! );

  System out println( 回到主线程 请稍等 刚才主线程挂起可能还没醒过来! );

  try

  

  sleep( );//挂起 秒

  

  catch (InterruptedException e)

  

  return;

  

  //如果该run()方法顺序执行完了 线程将自动结束 而不会被主线程杀掉

  //但如果休眠时间过长 则线程还存活 可能被stop()杀掉

  

  

  class ThreadUseRunnable implements Runnable

  //通过实现Runnable接口中的run()方法 再以这个实现了run()方法的类

  //为参数创建Thread的线程实例

  

  //Thread thread =new Thread(this);

  //以这个实现了Runnable接口中run()方法的类为参数创建Thread类的线程实例

  ThreadUseRunnable()//构造函数

  public void run()

  

  System out println( 我是Thread类的线程实例并以实现了Runnable接口的类为参数! );

  System out println( 我将挂起 秒! );

  System out println( 回到主线程 请稍等 刚才主线程挂起可能还没醒过来! );

  try

  

  Thread sleep( );//挂起 秒

  

  catch (InterruptedException e)

  

  return;

  

  //如果该run()方法顺序执行完了 线程将自动结束 而不会被主线程杀掉

  //但如果休眠时间过长 则线程还存活 可能被stop()杀掉

  

  

  //该程序可做的修改如改休眠时间或优先级setPriority()

  评论

cha138/Article/program/Java/gj/201311/27328

相关参考