System.out.println(name+”--”+sex);
bFull = false ;
notify();
}
}
控制线程的生命周期
控制线程生命周期的方法有很多种:如:suspend方法、resume方法和stop方法,不推荐使用suspend和resume方法是因为:
1、 会导致死锁的发生
2、 它允许一个线程(甲)通过直接控制另外一个线程(乙)的代码来直接控制那个线程(乙)。
虽然stop能够避免死锁的发生,但带来了另外的不足,如果一个线程正在操作共享数据段,操作过程没有完成就stop的话,将会导致数据的不完整性,所以stop方法也不提倡使用了。
public class ThreadLife
{
public static void main(String args[])
{
ThreadTest t = new ThreadTest() ;
new Thread(t).start() ;
for(int I=0;I<100;I++)
{
if(I==50)
t.stopMe() ;
System.out.println(“mainThread is running”);
}
}
}
class ThreadTest implements Runnable
{
private boolean bFlag = true ;
public void stopMe()
{
bFlag = false ;
}
public void run()
{
while(bFlag)
{
System.out.println(Thread.currentThread().getName()+
“is running”);
}
}
}
共21页 第1页 第2页 第3页 第4页 第5页 第6页 第7页 第8页 第9页 第10页 第11页 第12页 第13页 第14页 第15页 第16页 第17页 第18页 第19页 第20页 第21页






