JSPCN主页 | JSP空间 | 网站制作 | JSP下载 | JSP论坛 | JSP教程 | 关于JSPCN | 联系我们
JSP虚拟主机,jsp空间,java空间,java虚拟空间,详细请点击进入
做最专业的JSP中文网站 当前位置首页--JAVA技术--JAVA线程  
文章搜索:
关键字 标题
  
JSP中文网内容管理系统(JCMS)
JSP虚拟主机
网络笔记本
网摘,图片,笔记收藏
虚拟服务器

JSPCN文章目录分类
JSP配置[219]JSP基础[136]
中文问题[69]上传问题[27]
JAVABEAN[46]数据库[212]
文件操作[126]图片声音[17]
JSP其他[57]时间相关[16]
JAVAMAIL[72]STRUTS[144]
开发工具[28]教程系列[157]
JSP实例[89]
JAVA基础[421]APPLET[78]
JAVA网络[179]Applica[115]
Servlet[98]XML[163]
J2ME[257]J2EE[374]
考试相关[63]JAVA线程[90]
EJB[261]Swing[26]
Java API[141]声音图片[28]
异常处理[33]JAVA实例[290]
JAVA类[139]SUN[89]
Hibernate[6]JMX[8]
Spring[34]
本版推荐文章 
本版热点文章 
相关文章链接 
 
[JAVA100例]063、线程群组
作者:     文章来源:
访问次数:176次     加入时间:2006年07月06日
/**
 * <p>Title: 线程组群</p>
 * <p>Description: 通过线程组管理下面的多个线程。</p>
 * <p>Copyright: Copyright (c) 2003</p>
 * <p>Filename: myThreadgroup.java</p>
 * @version 1.0
 */
public class myThreadgroup extends Thread {
  public static int flag=1;
  ThreadGroup tgA;
  ThreadGroup tgB;
/**
 *<br>方法说明:主方法
 *<br>输入参数:
 *<br>返回类型:
 */
  public static void main(String[] args){
    myThreadgroup dt = new myThreadgroup();
    //声明线程组A
    dt.tgA = new ThreadGroup("A");
    //声明线程组B
    dt.tgB = new ThreadGroup("B");
    for(int i=1;i<3;i++)
      new thread1(dt.tgA,i*1000,"one"+i);
    for(int i=1;i<3;i++)
      new thread1(dt.tgB,1000,"two"+i);
    //启动本线程和所有线程组
    dt.start();
  }
/**
 *<br>方法说明:覆盖run方法,控制线程组
 *<br>输入参数:
 *<br>返回类型:
 */
  public void run(){
    try{
     this.sleep(5000);
     this.tgB.checkAccess();
     //停止线程组B,
     this.tgB.stop();
     System.out.println("**************tgB stop!***********************");
     this.sleep(1000);
     //检查线程组A是否可以更改
     this.tgA.checkAccess();
     //停止线程组A
     this.tgA.stop();
     System.out.println("**************tgA stop!***********************");
    
    }catch(SecurityException es){
       System.out.println("**"+es);
    }catch(Exception e){
       System.out.println("::"+e);
    }
   }
}
/**
 * <p>Title: 线程类</p>
 * <p>Description: 通过构造器的参数,实现不同的线程</p>
 * <p>Copyright: Copyright (c) 2003</p>
 * <p>Filename: thread1.java</p>
 * @author 杜江
 * @version 1.0
 */
class thread1 extends Thread {
    int pauseTime;
    String name;
    public thread1(ThreadGroup g,int x, String n) {
        super(g,n);
        pauseTime = x;
        name = n;
        start();
    }
/**
 *<br>方法说明:必须覆盖的方法。
 *<br>输入参数:
 *<br>返回类型:
 */
   public void run ()
   {
     while(true) {
      try {
          System.out.print(name+"::::");
          this.getThreadGroup().list();//获取线程组信息
          Thread.sleep(pauseTime);
      } catch(Exception e) {
          System.out.println(e);
      }
    }
   }
}
 
Copyright © 2002-2005 JSPCN.net. All rights reserved.
JSP中文网    备案序号:蜀ICP备05001583号
成都恒海科技发展有限公司    成都市一环路南二段6号新瑞楼三楼8号