Checking a Thread
public class TwoThreadAlive extends Thread
{
public void run()
{
for (int i = 0; i < 10; i++)
{
printMsg();
}
}
public void printMsg()
{
Thread t = Thread.currentThread();
String name = t.getName();
System.out.println("name=" + name);
}
public static void main(String[] args)
{
TwoThreadAlive tt = new TwoThreadAlive();
tt.setName("Thread");
System.out.println("before start(),
tt.isAlive()=" + tt.isAlive());
tt.start();
System.out.println("just after start(),
tt.isAlive()=" + tt.isAlive());
for (int i = 0; i < 10; i++)
{
tt.printMsg();
}
System.out.println("The end of main(),
tt.isAlive()=" + tt.isAlive());
}
}
Thread completion
public class Main
{
public static void main(String[] argv)throws Exception
{
Thread thread = new MyThread();
thread.start();
if (thread.isAlive())
{
System.out.println("Thread has not finished");
}
else
{
System.out.println("Finished");
}
long delayMillis = 5000;
thread.join(delayMillis);
if (thread.isAlive())
{
System.out.println("thread has not finished");
}
else
{
System.out.println("Finished");
}
thread.join();
}
}
class MyThread extends Thread
{
boolean stop = false;
public void run()
{
while (true)
{
if (stop)
{
return;
}
}
}
}
No comments:
Post a Comment