java 多线程-线程的终止

终止线程的两种方式:
线程正常执行完毕
外部干涉加入标识(在为真的情况下才执行线程)
不要使用stop和destroy方法

public class hh implements Runnable {
 //加入标识,标记线程体是否可以运行

private boolean flag=true;
private String name;
public hh(String name)
{
    this.name=name;
}
public void run()
{
    int i=0;
    //关联标识,true-->运行,false-->停止
    while(flag)
    {
        System.out.println(name+"-->"+i++);
    }
}
//对外提供方法改变标识
public void stopFlag()
{
    this.flag=false;
}
public static void main(String[]args)
{
    hh h=new hh("me");
    new Thread(h).start();

    for(int i=0;i<=10;i++)
    {
        if(i==9)
        {
            h.stopFlag();//线程的终止
            System.out.println("over");
        }
        System.out.println("it"+i);
    }

}

}

猜你喜欢

转载自blog.51cto.com/14437184/2427744