This example is used to demonstrate suspend and resume!
Class E13
{
public static void Main (String args[])
{
A a=new a ();
Thread Thread=new thread (a);
Thread.setname ("Zhang San");
Thread.Start ();
while (A.getstop () ==false) {}
System.out.println ("I am the main thread, responsible for recovering" +thread.getname () + "thread");
A.restart ();
}
}
class A implements Runnable
{
int number=0;
Boolean stop=false;
boolean getstop ()
{
return stop;
}
Public Void Run ()
{
While (true)
{
number++;
System.out.println (Thread.CurrentThread (). GetName () + "number=" +number);
if (number==3) {
try{
stop=true;
Hangup ();
System.out.println (Thread.CurrentThread (). GetName () + "recovery");
}catch (Exception e) {}
number=0;
}
try{Thread.Sleep (+);}
catch (Exception e) {}
}
}
synchronized void Hangup () throws interruptedexception{
wait ();
}
synchronized void Restart () {
Notifyall ();
}
}
Example 8.13 This example is used to demonstrate suspend and resume!