0% found this document useful (0 votes)
20 views

Example Multi Threading

Uploaded by

Khushi arora
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
20 views

Example Multi Threading

Uploaded by

Khushi arora
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 4

Example Extending Thread class

class T1 extends Thread


{
public void run()
{
try {
for(int n = 5; n > 0; n--) {
System.out.println("Child Thread" + n);
Thread.sleep(1000);
}
}catch (Exception e) {
System.out.println("Child thread interrupted");
}
}
}
class Test
{
public static void main(String args[])
{
try {
T1 a =new T1();
a.start();

for(int n = 5; n > 0; n--) {


System.out.println("main thread"+n);
Thread.sleep(1000);
}
} catch (Exception e) {
System.out.println("Main thread
interrupted");

}
}

}
Example Implementing Runnable interface

class T1 implements Runnable


{
public void run()
{
try {
for(int n = 5; n > 0; n--) {
System.out.println("Child Thread" + n);
Thread.sleep(1000);
}
}catch (InterruptedException e) {
System.out.println("Child thread interrupted");
}
}
}
class Test1
{
public static void main(String args[])
{
try {
T1 a =new T1();
Thread t = new Thread(a);
t.start();

for(int n = 5; n > 0; n--) {


System.out.println("main thread"+n);
Thread.sleep(1000);
}
} catch (InterruptedException e) {
System.out.println("Main thread
interrupted");

}
}

Other Thead Methods Meaning


getName Obtain a thread’s name.
getPriority Obtain a thread’s priority.
isAlive Determine if a thread is still running.
join Wait for a thread to terminate.
run Entry point for the thread.
sleep Suspend a thread for a period of time.
start Start a thread by calling its run method.

Creating Multiple Threads


// Create multiple threads.

class NewThread implements Runnable {


String name; // name of thread
Thread t;
NewThread(String threadname) {
name = threadname;
t = new Thread(this, name);
System.out.println("New thread: " + t);
t.start(); // Start the thread
}

// This is the entry point for thread.


public void run() {
try {
for(int i = 5; i > 0; i--) {
System.out.println(name + ": " + i);
Thread.sleep(1000);
}
} catch (InterruptedException e) {
System.out.println(name + "Interrupted");
}
System.out.println(name + " exiting.");
}
}

class MultiThreadDemo {
public static void main(String args[]) {
new NewThread("One"); // start threads
new NewThread("Two");
new NewThread("Three");
try {
// wait for other threads to end
Thread.sleep(10000);
} catch (InterruptedException e) {
System.out.println("Main thread Interrupted");
}
System.out.println("Main thread exiting.");
}
}

The output from this program is shown here:


New thread: Thread[One,5,main]
New thread: Thread[Two,5,main]
New thread: Thread[Three,5,main]
One: 5
Two: 5
Three: 5
One: 4
Two: 4
Three: 4
One: 3
Three: 3
Two: 3
One: 2
Three: 2
Two: 2
One: 1
Three: 1
Two: 1
One exiting.
Two exiting.
Three exiting.
Main thread exiting.

You might also like