SlideShare a Scribd company logo
Problem solving using
Multi Threading
Topics in this slide
Multi Processing
Multi Threading
Life Cycle of Thread
How to create Thread
Some Methods assosiated with Thread
getName(),setName()
getPriority(),set Priority()
sleep(),join()
problem
Multi Tasking
Multi Processing Multi Threading
• Multi Processing= It is process based Multi
Tasking and it is OS level Multi Tasking.
• When two independent tasks are performed
simultaneously on system is called Multiprocessing
• Example=In a software industry employees are
used to work by listening to music.
• In this case work may be writing code, designing
reports, sending mail, etc but these Along with music
is running parallelly in background.
Multi Threading=Multi Threading is the program level Multi Tasking
It is the process of executing multiple threads simultaneously.
Multi Threading is used for execution of program in less time.
Defaultly Main Thread is responsible for execution of entire code unless the sub Threads are created
Public class Main{
Public static void main(String[] args){
Statement 1
Statement 2
Statement 3
Statement 4
}
}
In this sample code no
sub threads are created so, the
entire code is executed by Main
thread
Let the time taken by the execution
is 4 sec
Public class Main{
Public static void main(String[] args){
Statement 1-----------t1 executes statement1
Statement 2------------t2 executes statement 2
Statement 3------------t3 executes statement 3
Statement 4-------------t4 executes statement 4
t1,t2,t3,t4;
}
}
In this sample code 4 sub threads are
created(t1,t2,t3,t4) so, the entire code is
executed by Main thread as well as sub
threads
Let the time taken by the execution is less than
the previous case.
Life cycle of
Thread
• Threads can be created in two ways
• Extending Thread class
• Implementing Runnable Interface
• We cannot interpret the order of flow of thread
execution
Thread creation in Java
public class Main extends Thread{
//@ overrided method
public void run(){
System.out.println("Thread name is "+getName());
}
public static void main(String[] args){
Main t1=new Main(); //Thread t1 is created
Main t2=new Main(); // Thread t2 is created
t1.start();
t2.start();
}
}
getName() method returns the name of the Thread
start() method calls the run method
How to set name to the Thread ?
If you want to know which specific thread is executing then you need to set name for the thread. This helps you
to understand which thread is executing.
public class Main extends Thread{
//@ overrided method
public void run(){
System.out.println("Thread name is "+getName());
}
public static void main(String[] args){
Main t1=new Main(); //Thread t1 is created
Main t2=new Main(); // Thread t2 is created
t1.setName("CSE");
t2.setName("ECE");
t1.start();
t2.start();
}
}
Thread
Priority
How to know the priority of Thread ?
public class Main extends Thread{
//@ overrided method
public void run(){
System.out.println("Thread name is "+getName()+" priority is "+getPriority());
}
public static void main(String[] args){
Main t1=new Main(); //Thread t1 is created
Main t2=new Main(); // Thread t2 is created
t1.setName("CSE");
t2.setName("ECE");
t1.start();
t2.start();
}
}
getPriority() method returns the priority of thread
How to set priority to Thread ?
public class Main extends Thread{
//@ overrided method
public void run(){
System.out.println("Thread name is "+getName()+" priority is "+getPriority());
}
public static void main(String[] args){
Main t1=new Main(); //Thread t1 is created
Main t2=new Main(); // Thread t2 is created
t1.setPriority(Thread.MIN_PRIORITY);//Priority is 1
t2.setPriority(Thread.MAX_PRIORITY);//Priority is 10
t1.setName("CSE");
t2.setName("ECE");
t1.start();
t2.start();
}
}
setPriority(Thread.(MAX or MIN or NORM)_PRIORITY) method used to set priority to thread
• Sleep()
• The sleep() method of Thread class is used to sleep a thread for the specified amount of
time.
• public class Main extends Thread{
• //@ overrided method
• public void run(){
• try{
• for(int i=0;i<5;i=i+1){
• sleep(1000) //1000ms=1s
• System.out.println("Thread name is "+getName());
• }
• }
• catch(Exception e){
• }
• }
• public static void main(String[] args){
• Main t1=new Main(); //Thread t1 is created
• t1.start();
• }
• }
Join()
Without join() method
public class Main extends Thread
{
public void run(){
for(int i=0;i<5;i=i+1){
System.out.println(Thread.currentThread().getName()+" "+i);
}
}
public static void main(String[] args) {
Main t1=new Main();
Main t2=new Main();
t1.start();
t2.start();
}
}
With join() method
public class Main extends Thread
{
public void run(){
for(int i=0;i<5;i=i+1){
System.out.println(Thread.currentThread().getName()+" "+i);
}
}
public static void main(String[] args) {
Main t1=new Main();
Main t2=new Main();
t1.start();
try{
t1.join();
}catch(Exception e){
}
t2.start();
}
Problem
Write a program for addition of two numbers and product of two numbers using Threads
Expaination
Sum(a,b) performed by thread t1
Product(a,b) performed by thread t2
Main thread displays the sum and product value of two numbers
class Number{
int a;
int b;
int s;
int p;
Number(int a,int b){
this.a=a;
this.b=b;
}
public void sum(){
s=a+b;
}
public void multiply(){
p=a*b;
}
public void display(){
System.out.println("sum is "+s);
System.out.println("product is "+p);
}
}
class ThreadA extends Thread{
Number num;
ThreadA(Number num){
this.num=num;
}
}
public class Main{
public static void main(String[] args){
Number num=new Number(1,2);
ThreadA t1=new ThreadA(num){
public void run(){
num.sum();
}
};
ThreadA t2=new ThreadA(num){
public void run(){
num.multiply();
}
};
t1.start();
t2.start();
try{
t2.join();
}catch(Exception e){
}
num.display();
}
}

More Related Content

What's hot

Thread priorities35
Thread priorities35Thread priorities35
Thread priorities35
myrajendra
 
Python Training in Bangalore | Multi threading | Learnbay.in
Python Training in Bangalore | Multi threading | Learnbay.inPython Training in Bangalore | Multi threading | Learnbay.in
Python Training in Bangalore | Multi threading | Learnbay.in
Learnbayin
 
Thread priorities
Thread prioritiesThread priorities
Thread priorities
Then Murugeshwari
 
Threads in python
Threads in pythonThreads in python
Multithreading Introduction and Lifecyle of thread
Multithreading Introduction and Lifecyle of threadMultithreading Introduction and Lifecyle of thread
Multithreading Introduction and Lifecyle of thread
Kartik Dube
 
Multi threading
Multi threadingMulti threading
Multi threading
Mavoori Soshmitha
 
Threads in Java
Threads in JavaThreads in Java
Threads in Java
Gaurav Aggarwal
 
L22 multi-threading-introduction
L22 multi-threading-introductionL22 multi-threading-introduction
L22 multi-threading-introduction
teach4uin
 
Multithreading Concepts
Multithreading ConceptsMultithreading Concepts
Multithreading Concepts
Arvind Krishnaa
 
Internet Programming with Java
Internet Programming with JavaInternet Programming with Java
Internet Programming with Java
kavitha muneeshwaran
 
Multithreading in Java
Multithreading in JavaMultithreading in Java
Multithreading in Java
Appsterdam Milan
 
MULTI THREADING IN JAVA
MULTI THREADING IN JAVAMULTI THREADING IN JAVA
MULTI THREADING IN JAVA
VINOTH R
 
Multithreading in-java
Multithreading in-javaMultithreading in-java
Multithreading in-java
aalipalh
 
12 multi-threading
12 multi-threading12 multi-threading
12 multi-threading
APU
 
Multithreading in java
Multithreading in javaMultithreading in java
Multithreading in java
Lovely Professional University
 
Java Multithreading and Concurrency
Java Multithreading and ConcurrencyJava Multithreading and Concurrency
Java Multithreading and Concurrency
Rajesh Ananda Kumar
 
Java Multithreading
Java MultithreadingJava Multithreading
Java Multithreading
Rajkattamuri
 
Java thread
Java threadJava thread
Java thread
Arati Gadgil
 
.NET Multithreading/Multitasking
.NET Multithreading/Multitasking.NET Multithreading/Multitasking
.NET Multithreading/Multitasking
Sasha Kravchuk
 
Java осень 2012 лекция 2
Java осень 2012 лекция 2Java осень 2012 лекция 2
Java осень 2012 лекция 2
Technopark
 

What's hot (20)

Thread priorities35
Thread priorities35Thread priorities35
Thread priorities35
 
Python Training in Bangalore | Multi threading | Learnbay.in
Python Training in Bangalore | Multi threading | Learnbay.inPython Training in Bangalore | Multi threading | Learnbay.in
Python Training in Bangalore | Multi threading | Learnbay.in
 
Thread priorities
Thread prioritiesThread priorities
Thread priorities
 
Threads in python
Threads in pythonThreads in python
Threads in python
 
Multithreading Introduction and Lifecyle of thread
Multithreading Introduction and Lifecyle of threadMultithreading Introduction and Lifecyle of thread
Multithreading Introduction and Lifecyle of thread
 
Multi threading
Multi threadingMulti threading
Multi threading
 
Threads in Java
Threads in JavaThreads in Java
Threads in Java
 
L22 multi-threading-introduction
L22 multi-threading-introductionL22 multi-threading-introduction
L22 multi-threading-introduction
 
Multithreading Concepts
Multithreading ConceptsMultithreading Concepts
Multithreading Concepts
 
Internet Programming with Java
Internet Programming with JavaInternet Programming with Java
Internet Programming with Java
 
Multithreading in Java
Multithreading in JavaMultithreading in Java
Multithreading in Java
 
MULTI THREADING IN JAVA
MULTI THREADING IN JAVAMULTI THREADING IN JAVA
MULTI THREADING IN JAVA
 
Multithreading in-java
Multithreading in-javaMultithreading in-java
Multithreading in-java
 
12 multi-threading
12 multi-threading12 multi-threading
12 multi-threading
 
Multithreading in java
Multithreading in javaMultithreading in java
Multithreading in java
 
Java Multithreading and Concurrency
Java Multithreading and ConcurrencyJava Multithreading and Concurrency
Java Multithreading and Concurrency
 
Java Multithreading
Java MultithreadingJava Multithreading
Java Multithreading
 
Java thread
Java threadJava thread
Java thread
 
.NET Multithreading/Multitasking
.NET Multithreading/Multitasking.NET Multithreading/Multitasking
.NET Multithreading/Multitasking
 
Java осень 2012 лекция 2
Java осень 2012 лекция 2Java осень 2012 лекция 2
Java осень 2012 лекция 2
 

Similar to Multi threading

OOPS object oriented programming UNIT-4.pptx
OOPS object oriented programming UNIT-4.pptxOOPS object oriented programming UNIT-4.pptx
OOPS object oriented programming UNIT-4.pptx
Arulmozhivarman8
 
Threads in java, Multitasking and Multithreading
Threads in java, Multitasking and MultithreadingThreads in java, Multitasking and Multithreading
Threads in java, Multitasking and Multithreading
ssusere538f7
 
Multithreading
MultithreadingMultithreading
Multithreading
SanthiNivas
 
Java Multithreading.pptx
Java Multithreading.pptxJava Multithreading.pptx
Java Multithreading.pptx
RanjithaM32
 
advanced java ppt
advanced java pptadvanced java ppt
advanced java ppt
PreetiDixit22
 
Session 7_MULTITHREADING in java example.ppt
Session 7_MULTITHREADING in java example.pptSession 7_MULTITHREADING in java example.ppt
Session 7_MULTITHREADING in java example.ppt
TabassumMaktum
 
Session 7_MULTITHREADING in java example.ppt
Session 7_MULTITHREADING in java example.pptSession 7_MULTITHREADING in java example.ppt
Session 7_MULTITHREADING in java example.ppt
TabassumMaktum
 
Multithreading.pptx
Multithreading.pptxMultithreading.pptx
Multithreading.pptx
PragatiSutar4
 
Java programming PPT. .pptx
Java programming PPT.                 .pptxJava programming PPT.                 .pptx
Java programming PPT. .pptx
creativegamerz00
 
Runnable interface.34
Runnable interface.34Runnable interface.34
Runnable interface.34
myrajendra
 
Threads
ThreadsThreads
Multithreading in Java Object Oriented Programming language
Multithreading in Java Object Oriented Programming languageMultithreading in Java Object Oriented Programming language
Multithreading in Java Object Oriented Programming language
arnavytstudio2814
 
Threading
ThreadingThreading
Threading
abhay singh
 
Thread 1
Thread 1Thread 1
Thread 1
RAVI MAURYA
 
Multithreading in java
Multithreading in javaMultithreading in java
Multithreading in java
Monika Mishra
 
Java class 6
Java class 6Java class 6
Java class 6
Edureka!
 
multithreading, creating a thread and life cycle in java.ppt
multithreading, creating a thread and life cycle in java.pptmultithreading, creating a thread and life cycle in java.ppt
multithreading, creating a thread and life cycle in java.ppt
shikhaverma566116
 
Java multi threading
Java multi threadingJava multi threading
Java multi threading
Raja Sekhar
 
Thread model in java
Thread model in javaThread model in java
Thread model in java
AmbigaMurugesan
 
Threading concepts
Threading conceptsThreading concepts
Threading concepts
Raheemaparveen
 

Similar to Multi threading (20)

OOPS object oriented programming UNIT-4.pptx
OOPS object oriented programming UNIT-4.pptxOOPS object oriented programming UNIT-4.pptx
OOPS object oriented programming UNIT-4.pptx
 
Threads in java, Multitasking and Multithreading
Threads in java, Multitasking and MultithreadingThreads in java, Multitasking and Multithreading
Threads in java, Multitasking and Multithreading
 
Multithreading
MultithreadingMultithreading
Multithreading
 
Java Multithreading.pptx
Java Multithreading.pptxJava Multithreading.pptx
Java Multithreading.pptx
 
advanced java ppt
advanced java pptadvanced java ppt
advanced java ppt
 
Session 7_MULTITHREADING in java example.ppt
Session 7_MULTITHREADING in java example.pptSession 7_MULTITHREADING in java example.ppt
Session 7_MULTITHREADING in java example.ppt
 
Session 7_MULTITHREADING in java example.ppt
Session 7_MULTITHREADING in java example.pptSession 7_MULTITHREADING in java example.ppt
Session 7_MULTITHREADING in java example.ppt
 
Multithreading.pptx
Multithreading.pptxMultithreading.pptx
Multithreading.pptx
 
Java programming PPT. .pptx
Java programming PPT.                 .pptxJava programming PPT.                 .pptx
Java programming PPT. .pptx
 
Runnable interface.34
Runnable interface.34Runnable interface.34
Runnable interface.34
 
Threads
ThreadsThreads
Threads
 
Multithreading in Java Object Oriented Programming language
Multithreading in Java Object Oriented Programming languageMultithreading in Java Object Oriented Programming language
Multithreading in Java Object Oriented Programming language
 
Threading
ThreadingThreading
Threading
 
Thread 1
Thread 1Thread 1
Thread 1
 
Multithreading in java
Multithreading in javaMultithreading in java
Multithreading in java
 
Java class 6
Java class 6Java class 6
Java class 6
 
multithreading, creating a thread and life cycle in java.ppt
multithreading, creating a thread and life cycle in java.pptmultithreading, creating a thread and life cycle in java.ppt
multithreading, creating a thread and life cycle in java.ppt
 
Java multi threading
Java multi threadingJava multi threading
Java multi threading
 
Thread model in java
Thread model in javaThread model in java
Thread model in java
 
Threading concepts
Threading conceptsThreading concepts
Threading concepts
 

Recently uploaded

Recycled Concrete Aggregate in Construction Part II
Recycled Concrete Aggregate in Construction Part IIRecycled Concrete Aggregate in Construction Part II
Recycled Concrete Aggregate in Construction Part II
Aditya Rajan Patra
 
Presentation of IEEE Slovenia CIS (Computational Intelligence Society) Chapte...
Presentation of IEEE Slovenia CIS (Computational Intelligence Society) Chapte...Presentation of IEEE Slovenia CIS (Computational Intelligence Society) Chapte...
Presentation of IEEE Slovenia CIS (Computational Intelligence Society) Chapte...
University of Maribor
 
ACEP Magazine edition 4th launched on 05.06.2024
ACEP Magazine edition 4th launched on 05.06.2024ACEP Magazine edition 4th launched on 05.06.2024
ACEP Magazine edition 4th launched on 05.06.2024
Rahul
 
ISPM 15 Heat Treated Wood Stamps and why your shipping must have one
ISPM 15 Heat Treated Wood Stamps and why your shipping must have oneISPM 15 Heat Treated Wood Stamps and why your shipping must have one
ISPM 15 Heat Treated Wood Stamps and why your shipping must have one
Las Vegas Warehouse
 
Harnessing WebAssembly for Real-time Stateless Streaming Pipelines
Harnessing WebAssembly for Real-time Stateless Streaming PipelinesHarnessing WebAssembly for Real-time Stateless Streaming Pipelines
Harnessing WebAssembly for Real-time Stateless Streaming Pipelines
Christina Lin
 
Literature Review Basics and Understanding Reference Management.pptx
Literature Review Basics and Understanding Reference Management.pptxLiterature Review Basics and Understanding Reference Management.pptx
Literature Review Basics and Understanding Reference Management.pptx
Dr Ramhari Poudyal
 
Manufacturing Process of molasses based distillery ppt.pptx
Manufacturing Process of molasses based distillery ppt.pptxManufacturing Process of molasses based distillery ppt.pptx
Manufacturing Process of molasses based distillery ppt.pptx
Madan Karki
 
DEEP LEARNING FOR SMART GRID INTRUSION DETECTION: A HYBRID CNN-LSTM-BASED MODEL
DEEP LEARNING FOR SMART GRID INTRUSION DETECTION: A HYBRID CNN-LSTM-BASED MODELDEEP LEARNING FOR SMART GRID INTRUSION DETECTION: A HYBRID CNN-LSTM-BASED MODEL
DEEP LEARNING FOR SMART GRID INTRUSION DETECTION: A HYBRID CNN-LSTM-BASED MODEL
gerogepatton
 
Casting-Defect-inSlab continuous casting.pdf
Casting-Defect-inSlab continuous casting.pdfCasting-Defect-inSlab continuous casting.pdf
Casting-Defect-inSlab continuous casting.pdf
zubairahmad848137
 
22CYT12-Unit-V-E Waste and its Management.ppt
22CYT12-Unit-V-E Waste and its Management.ppt22CYT12-Unit-V-E Waste and its Management.ppt
22CYT12-Unit-V-E Waste and its Management.ppt
KrishnaveniKrishnara1
 
International Conference on NLP, Artificial Intelligence, Machine Learning an...
International Conference on NLP, Artificial Intelligence, Machine Learning an...International Conference on NLP, Artificial Intelligence, Machine Learning an...
International Conference on NLP, Artificial Intelligence, Machine Learning an...
gerogepatton
 
CSM Cloud Service Management Presentarion
CSM Cloud Service Management PresentarionCSM Cloud Service Management Presentarion
CSM Cloud Service Management Presentarion
rpskprasana
 
TIME DIVISION MULTIPLEXING TECHNIQUE FOR COMMUNICATION SYSTEM
TIME DIVISION MULTIPLEXING TECHNIQUE FOR COMMUNICATION SYSTEMTIME DIVISION MULTIPLEXING TECHNIQUE FOR COMMUNICATION SYSTEM
TIME DIVISION MULTIPLEXING TECHNIQUE FOR COMMUNICATION SYSTEM
HODECEDSIET
 
Engineering Drawings Lecture Detail Drawings 2014.pdf
Engineering Drawings Lecture Detail Drawings 2014.pdfEngineering Drawings Lecture Detail Drawings 2014.pdf
Engineering Drawings Lecture Detail Drawings 2014.pdf
abbyasa1014
 
spirit beverages ppt without graphics.pptx
spirit beverages ppt without graphics.pptxspirit beverages ppt without graphics.pptx
spirit beverages ppt without graphics.pptx
Madan Karki
 
Iron and Steel Technology Roadmap - Towards more sustainable steelmaking.pdf
Iron and Steel Technology Roadmap - Towards more sustainable steelmaking.pdfIron and Steel Technology Roadmap - Towards more sustainable steelmaking.pdf
Iron and Steel Technology Roadmap - Towards more sustainable steelmaking.pdf
RadiNasr
 
哪里办理(csu毕业证书)查尔斯特大学毕业证硕士学历原版一模一样
哪里办理(csu毕业证书)查尔斯特大学毕业证硕士学历原版一模一样哪里办理(csu毕业证书)查尔斯特大学毕业证硕士学历原版一模一样
哪里办理(csu毕业证书)查尔斯特大学毕业证硕士学历原版一模一样
insn4465
 
basic-wireline-operations-course-mahmoud-f-radwan.pdf
basic-wireline-operations-course-mahmoud-f-radwan.pdfbasic-wireline-operations-course-mahmoud-f-radwan.pdf
basic-wireline-operations-course-mahmoud-f-radwan.pdf
NidhalKahouli2
 
BPV-GUI-01-Guide-for-ASME-Review-Teams-(General)-10-10-2023.pdf
BPV-GUI-01-Guide-for-ASME-Review-Teams-(General)-10-10-2023.pdfBPV-GUI-01-Guide-for-ASME-Review-Teams-(General)-10-10-2023.pdf
BPV-GUI-01-Guide-for-ASME-Review-Teams-(General)-10-10-2023.pdf
MIGUELANGEL966976
 
New techniques for characterising damage in rock slopes.pdf
New techniques for characterising damage in rock slopes.pdfNew techniques for characterising damage in rock slopes.pdf
New techniques for characterising damage in rock slopes.pdf
wisnuprabawa3
 

Recently uploaded (20)

Recycled Concrete Aggregate in Construction Part II
Recycled Concrete Aggregate in Construction Part IIRecycled Concrete Aggregate in Construction Part II
Recycled Concrete Aggregate in Construction Part II
 
Presentation of IEEE Slovenia CIS (Computational Intelligence Society) Chapte...
Presentation of IEEE Slovenia CIS (Computational Intelligence Society) Chapte...Presentation of IEEE Slovenia CIS (Computational Intelligence Society) Chapte...
Presentation of IEEE Slovenia CIS (Computational Intelligence Society) Chapte...
 
ACEP Magazine edition 4th launched on 05.06.2024
ACEP Magazine edition 4th launched on 05.06.2024ACEP Magazine edition 4th launched on 05.06.2024
ACEP Magazine edition 4th launched on 05.06.2024
 
ISPM 15 Heat Treated Wood Stamps and why your shipping must have one
ISPM 15 Heat Treated Wood Stamps and why your shipping must have oneISPM 15 Heat Treated Wood Stamps and why your shipping must have one
ISPM 15 Heat Treated Wood Stamps and why your shipping must have one
 
Harnessing WebAssembly for Real-time Stateless Streaming Pipelines
Harnessing WebAssembly for Real-time Stateless Streaming PipelinesHarnessing WebAssembly for Real-time Stateless Streaming Pipelines
Harnessing WebAssembly for Real-time Stateless Streaming Pipelines
 
Literature Review Basics and Understanding Reference Management.pptx
Literature Review Basics and Understanding Reference Management.pptxLiterature Review Basics and Understanding Reference Management.pptx
Literature Review Basics and Understanding Reference Management.pptx
 
Manufacturing Process of molasses based distillery ppt.pptx
Manufacturing Process of molasses based distillery ppt.pptxManufacturing Process of molasses based distillery ppt.pptx
Manufacturing Process of molasses based distillery ppt.pptx
 
DEEP LEARNING FOR SMART GRID INTRUSION DETECTION: A HYBRID CNN-LSTM-BASED MODEL
DEEP LEARNING FOR SMART GRID INTRUSION DETECTION: A HYBRID CNN-LSTM-BASED MODELDEEP LEARNING FOR SMART GRID INTRUSION DETECTION: A HYBRID CNN-LSTM-BASED MODEL
DEEP LEARNING FOR SMART GRID INTRUSION DETECTION: A HYBRID CNN-LSTM-BASED MODEL
 
Casting-Defect-inSlab continuous casting.pdf
Casting-Defect-inSlab continuous casting.pdfCasting-Defect-inSlab continuous casting.pdf
Casting-Defect-inSlab continuous casting.pdf
 
22CYT12-Unit-V-E Waste and its Management.ppt
22CYT12-Unit-V-E Waste and its Management.ppt22CYT12-Unit-V-E Waste and its Management.ppt
22CYT12-Unit-V-E Waste and its Management.ppt
 
International Conference on NLP, Artificial Intelligence, Machine Learning an...
International Conference on NLP, Artificial Intelligence, Machine Learning an...International Conference on NLP, Artificial Intelligence, Machine Learning an...
International Conference on NLP, Artificial Intelligence, Machine Learning an...
 
CSM Cloud Service Management Presentarion
CSM Cloud Service Management PresentarionCSM Cloud Service Management Presentarion
CSM Cloud Service Management Presentarion
 
TIME DIVISION MULTIPLEXING TECHNIQUE FOR COMMUNICATION SYSTEM
TIME DIVISION MULTIPLEXING TECHNIQUE FOR COMMUNICATION SYSTEMTIME DIVISION MULTIPLEXING TECHNIQUE FOR COMMUNICATION SYSTEM
TIME DIVISION MULTIPLEXING TECHNIQUE FOR COMMUNICATION SYSTEM
 
Engineering Drawings Lecture Detail Drawings 2014.pdf
Engineering Drawings Lecture Detail Drawings 2014.pdfEngineering Drawings Lecture Detail Drawings 2014.pdf
Engineering Drawings Lecture Detail Drawings 2014.pdf
 
spirit beverages ppt without graphics.pptx
spirit beverages ppt without graphics.pptxspirit beverages ppt without graphics.pptx
spirit beverages ppt without graphics.pptx
 
Iron and Steel Technology Roadmap - Towards more sustainable steelmaking.pdf
Iron and Steel Technology Roadmap - Towards more sustainable steelmaking.pdfIron and Steel Technology Roadmap - Towards more sustainable steelmaking.pdf
Iron and Steel Technology Roadmap - Towards more sustainable steelmaking.pdf
 
哪里办理(csu毕业证书)查尔斯特大学毕业证硕士学历原版一模一样
哪里办理(csu毕业证书)查尔斯特大学毕业证硕士学历原版一模一样哪里办理(csu毕业证书)查尔斯特大学毕业证硕士学历原版一模一样
哪里办理(csu毕业证书)查尔斯特大学毕业证硕士学历原版一模一样
 
basic-wireline-operations-course-mahmoud-f-radwan.pdf
basic-wireline-operations-course-mahmoud-f-radwan.pdfbasic-wireline-operations-course-mahmoud-f-radwan.pdf
basic-wireline-operations-course-mahmoud-f-radwan.pdf
 
BPV-GUI-01-Guide-for-ASME-Review-Teams-(General)-10-10-2023.pdf
BPV-GUI-01-Guide-for-ASME-Review-Teams-(General)-10-10-2023.pdfBPV-GUI-01-Guide-for-ASME-Review-Teams-(General)-10-10-2023.pdf
BPV-GUI-01-Guide-for-ASME-Review-Teams-(General)-10-10-2023.pdf
 
New techniques for characterising damage in rock slopes.pdf
New techniques for characterising damage in rock slopes.pdfNew techniques for characterising damage in rock slopes.pdf
New techniques for characterising damage in rock slopes.pdf
 

Multi threading

  • 2. Topics in this slide Multi Processing Multi Threading Life Cycle of Thread How to create Thread Some Methods assosiated with Thread getName(),setName() getPriority(),set Priority() sleep(),join() problem
  • 4. • Multi Processing= It is process based Multi Tasking and it is OS level Multi Tasking. • When two independent tasks are performed simultaneously on system is called Multiprocessing • Example=In a software industry employees are used to work by listening to music. • In this case work may be writing code, designing reports, sending mail, etc but these Along with music is running parallelly in background.
  • 5. Multi Threading=Multi Threading is the program level Multi Tasking It is the process of executing multiple threads simultaneously. Multi Threading is used for execution of program in less time. Defaultly Main Thread is responsible for execution of entire code unless the sub Threads are created
  • 6. Public class Main{ Public static void main(String[] args){ Statement 1 Statement 2 Statement 3 Statement 4 } } In this sample code no sub threads are created so, the entire code is executed by Main thread Let the time taken by the execution is 4 sec Public class Main{ Public static void main(String[] args){ Statement 1-----------t1 executes statement1 Statement 2------------t2 executes statement 2 Statement 3------------t3 executes statement 3 Statement 4-------------t4 executes statement 4 t1,t2,t3,t4; } } In this sample code 4 sub threads are created(t1,t2,t3,t4) so, the entire code is executed by Main thread as well as sub threads Let the time taken by the execution is less than the previous case.
  • 8. • Threads can be created in two ways • Extending Thread class • Implementing Runnable Interface • We cannot interpret the order of flow of thread execution
  • 9. Thread creation in Java public class Main extends Thread{ //@ overrided method public void run(){ System.out.println("Thread name is "+getName()); } public static void main(String[] args){ Main t1=new Main(); //Thread t1 is created Main t2=new Main(); // Thread t2 is created t1.start(); t2.start(); } } getName() method returns the name of the Thread start() method calls the run method
  • 10. How to set name to the Thread ? If you want to know which specific thread is executing then you need to set name for the thread. This helps you to understand which thread is executing. public class Main extends Thread{ //@ overrided method public void run(){ System.out.println("Thread name is "+getName()); } public static void main(String[] args){ Main t1=new Main(); //Thread t1 is created Main t2=new Main(); // Thread t2 is created t1.setName("CSE"); t2.setName("ECE"); t1.start(); t2.start(); } }
  • 12. How to know the priority of Thread ? public class Main extends Thread{ //@ overrided method public void run(){ System.out.println("Thread name is "+getName()+" priority is "+getPriority()); } public static void main(String[] args){ Main t1=new Main(); //Thread t1 is created Main t2=new Main(); // Thread t2 is created t1.setName("CSE"); t2.setName("ECE"); t1.start(); t2.start(); } } getPriority() method returns the priority of thread
  • 13. How to set priority to Thread ? public class Main extends Thread{ //@ overrided method public void run(){ System.out.println("Thread name is "+getName()+" priority is "+getPriority()); } public static void main(String[] args){ Main t1=new Main(); //Thread t1 is created Main t2=new Main(); // Thread t2 is created t1.setPriority(Thread.MIN_PRIORITY);//Priority is 1 t2.setPriority(Thread.MAX_PRIORITY);//Priority is 10 t1.setName("CSE"); t2.setName("ECE"); t1.start(); t2.start(); } } setPriority(Thread.(MAX or MIN or NORM)_PRIORITY) method used to set priority to thread
  • 14. • Sleep() • The sleep() method of Thread class is used to sleep a thread for the specified amount of time.
  • 15. • public class Main extends Thread{ • //@ overrided method • public void run(){ • try{ • for(int i=0;i<5;i=i+1){ • sleep(1000) //1000ms=1s • System.out.println("Thread name is "+getName()); • } • } • catch(Exception e){ • } • } • public static void main(String[] args){ • Main t1=new Main(); //Thread t1 is created • t1.start(); • } • }
  • 17.
  • 18. Without join() method public class Main extends Thread { public void run(){ for(int i=0;i<5;i=i+1){ System.out.println(Thread.currentThread().getName()+" "+i); } } public static void main(String[] args) { Main t1=new Main(); Main t2=new Main(); t1.start(); t2.start(); } }
  • 19. With join() method public class Main extends Thread { public void run(){ for(int i=0;i<5;i=i+1){ System.out.println(Thread.currentThread().getName()+" "+i); } } public static void main(String[] args) { Main t1=new Main(); Main t2=new Main(); t1.start(); try{ t1.join(); }catch(Exception e){ } t2.start(); }
  • 20. Problem Write a program for addition of two numbers and product of two numbers using Threads Expaination Sum(a,b) performed by thread t1 Product(a,b) performed by thread t2 Main thread displays the sum and product value of two numbers
  • 21. class Number{ int a; int b; int s; int p; Number(int a,int b){ this.a=a; this.b=b; } public void sum(){ s=a+b; } public void multiply(){ p=a*b; } public void display(){ System.out.println("sum is "+s); System.out.println("product is "+p); } }
  • 22. class ThreadA extends Thread{ Number num; ThreadA(Number num){ this.num=num; } } public class Main{ public static void main(String[] args){ Number num=new Number(1,2); ThreadA t1=new ThreadA(num){ public void run(){ num.sum(); } }; ThreadA t2=new ThreadA(num){ public void run(){ num.multiply(); } }; t1.start(); t2.start(); try{ t2.join(); }catch(Exception e){ } num.display(); } }