您的位置:首页 >> 编程开发 >> Java >> 线程 >> 正文
RSS
 

Java多线程学习笔记(一)

http://www.rdxx.com 06年12月20日 00:59 互联网 我要投稿

关键词: 学习笔记 , 多线程 , Java , 学习 , 线程

Java多线程学习笔记(一)

作者:陶冶(无邪)
时间:2003.6.18

一、线程类
  Java是通过Java.lang.Thread类来实现多线程的,第个Thread对象描述了一个单独的线程。要产生一个线程,有两种方法:
    1、需要从Java.lang.Thread类继承一个新的线程类,重载它的run()方法;
    2、通过Runnalbe接口实现一个从非线程类继承来类的多线程,重载Runnalbe接口的run()方法。运行一个新的线程,只需要调用它的start()方法即可。如:
/**=====================================================================
* 文件:ThreadDemo_01.java
* 描述:产生一个新的线程
* ======================================================================
*/
class ThreadDemo extends Thread{
  Threads()
  {
  }
  
  Threads(String szName)
  {
    super(szName);
  }
  
  // 重载run函数
  public void run()
  {
     for (int count = 1,row = 1; row < 20; row++,count++)
     {
        for (int i = 0; i < count; i++)
        {
           System.out.print('*');
        }
        System.out.println();
     }
  }
}

class ThreadMain{
  public static void main(String argv[]){
    ThreadDemo th = new ThreadDemo();
    // 调用start()方法执行一个新的线程
    th.start();
  }
}

  线程类的一些常用方法:

  sleep(): 强迫一个线程睡眠N毫秒。
  isAlive(): 判断一个线程是否存活。
  join(): 等待线程终止。
  activeCount(): 程序中活跃的线程数。
  enumerate(): 枚举程序中的线程。
    currentThread(): 得到当前线程。
  isDaemon(): 一个线程是否为守护线程。
  setDaemon(): 设置一个线程为守护线程。(用户线程和守护线程的区别在于,是否等待主线程依赖于主线程结束而结束)
  setName(): 为线程设置一个名称。
  wait(): 强迫一个线程等待。
  notify(): 通知一个线程继续运行。
  setPriority(): 设置一个线程的优先级。

二、等待一个线程的结束
  有些时候我们需要等待一个线程终止后再运行我们的另一个线程,这时我们应该怎么办呢?请看下面的例子:
/**=====================================================================
* 文件:ThreadDemo_02.java
* 描述:等待一个线程的结束
* ======================================================================
*/
class ThreadDemo extends Thread{
  Threads()
  {
  }
  
  Threads(String szName)
  {
    super(szName);
  }
  
  // 重载run函数
  public void run()
  {
     for (int count = 1,row = 1; row < 20; row++,count++)
     {
        for (int i = 0; i < count; i++)
        {
           System.out.print('*');
        }
        System.out.println();

9 7 3 1 2 3 4 5 6 4 8 :

 
 
标签: 学习笔记 , 多线程 , Java , 学习 , 线程 打印本文
 
 
  相关资讯
RSS
 
 
 
  热点搜索
 
 
 



Valid XHTML 1.0 Transitional
Copyright ©2005 - 2008 Rdxx.Com,All Rights Reserved
收藏本页
收藏本站