SlideShare a Scribd company logo
JAVA
MULTITHREADING
By
Mrs.R.Hannah Roseline
Assistant Professor
Sri Ramakrishna college of Arts &
science
TOPIC INCLUDES:
 Introduction to Thread
 Creation of Thread
 Life cycle of Thread
 Stopping and Blocking a Thread
 Using Thread Methods
 Thread Priority
 Thread Synchronization
 DeadLock
INTRODUCTION TO THREAD
• Process and Thread are two basic units of Java
program execution.
• Process: A process is a self contained execution
environment and it can be seen as a program or
application.
• Thread: It can be called lightweight process
• Thread requires less resources to create and exists in the
process
• Thread shares the process resources
INTRODUCTION Contd.
MULTITHREADING
• Multithreading in java is a process of
executing multiple processes simultaneously
• A program is divided into two or more
subprograms, which can be implemented at
the same time in parallel.
• Multiprocessing and multithreading, both are
used to achieve multitasking.
• Java Multithreading is mostly used in games,
animation etc.
MULTITHREADING Contd.
MULTITHREADING Contd.
ADVANTAGE:
 It doesn't block the user
 can perform many operations together so it
saves time.
 Threads are independent so it doesn't
affect other threads
CREATING THREAD
• Threads are implemented in the form of objects.
• The run() and start() are two inbuilt methods
which helps to thread implementation
• The run() method is the heart and soul of any
thread
– It makes up the entire body of a thread
• The run() method can be initiating with the help
of start() method.
CREATING THREAD Contd.
CREATING THREAD
1. By extending Thread class
2. By implementing Runnable
interface
CREATING THREAD Contd.
1. By Extending Thread class
class Multi extends Thread // Extending thread class
{
public void run() // run() method declared
{
System.out.println("thread is running...");
}
public static void main(String args[])
{
Multi t1=new Multi(); //object initiated
t1.start(); // run() method called through start()
}
}
Output: thread is running…
CREATING THREAD Contd.
2. By implementing Runnable interface
 Define a class that implements Runnable
interface.
 The Runnable interface has only one method,
run(), that is to be defined in the method with the
code to be executed by the thread.
CREATING THREAD Contd.
2. By implementing Runnable interface
class Multi3 implements Runnable // Implementing
Runnable interface
{
public void run()
{
System.out.println("thread is running...");
}
public static void main(String args[])
{
Multi3 m1=new Multi3(); // object initiated for class
Thread t1 =new Thread(m1); // object initiated for thread
t1.start();
} }
Output: thread is running…
LIFE cycle of a thread
• During the life time of a thread, there are
many states it can enter.
• They include:
1. Newborn state
2. Runnable state
3. Running state
4. Blocked state
5. Dead state
LIFE cycle of a thread contd.
LIFE cycle of a thread contd.
Newborn State:
 The thread is born and is said to be in newborn
state.
 The thread is not yet scheduled for running.
 At this state, we can do only one of the following:
• Schedule it for running using start() method.
• Kill it using stop() method.
LIFE cycle of a thread contd.
Runnable State:
 The thread is ready for execution
 Waiting for the availability of the processor.
 The thread has joined the queue
LIFE cycle of a thread contd.
Running State:
• Thread is executing
• The processor has given its time to the thread
for its execution.
• The thread runs until it gives up control on its
own or taken over by other threads.
LIFE cycle of a thread contd.
Blocked State:
• A thread is said to be blocked
• It is prevented to entering into the runnable and the
running state.
• This happens when the thread is suspended, sleeping, or
waiting in order to satisfy certain requirements.
• A blocked thread is considered "not runnable" but not
dead and therefore fully qualified to run again.
• This state is achieved when we
Invoke suspend() or sleep() or wait() methods.
LIFE cycle of a thread contd.
Dead State:
• Every thread has a life cycle.
• A running thread ends its life when it has completed
executing its run( ) method. It is a natural death.
• A thread can be killed in born, or in running, or even in
"not runnable" (blocked) condition.
• It is called premature death.
• This state is achieved when we invoke stop() method
or the thread completes it execution.
Thread methods
• Thread is a class found in java.lang package.
Method Signature Description
String getName() Retrieves the name of running thread in the current
context in String format
void start()
This method will start a new thread of execution by
calling run() method of Thread/runnable object.
void run() This method is the entry point of the thread. Execution of
thread starts from this method.
void sleep(int sleeptime)
This method suspend the thread for mentioned time
duration in argument (sleeptime in ms)
void yield()
By invoking this method the current thread pause its
execution temporarily and allow other threads to execute.
void join()
This method used to queue up a thread in execution.
Once called on thread, current thread will wait till calling
thread completes its execution
boolean isAlive() This method will check if thread is alive or dead
Stopping and blocking
Stopping a thread:
• To stop a thread from running further, we may do so
by calling its stop() method.
• This causes a thread to stop immediately and move
it to its dead state.
• It forces the thread to stop abruptly before its
completion
• It causes premature death.
• To stop a thread we use the following syntax:
thread.stop();
Stopping and blocking
Blocking a Thread:
• A thread can also be temporarily suspended or
blocked from entering into the runnable and
subsequently running state,
1. sleep(t) // blocked for ‘t’ milliseconds
2. suspend() // blocked until resume() method is invoked
3. wait() // blocked until notify () is invoked
Thread priority
• Each thread is assigned a priority, which
affects the order in which it is scheduled for
running.
• Java permits us to set the priority of a thread
using the setPriority() method as follows:
ThreadName.setPriority(int Number);
Thread priority contd.
• The intNumber is an integer value to which the
thread's priority is set. The Thread class defines
several priority constants:
1. public static int MIN_PRIORITY = 1
2. public static int NORM_PRIORITY = 5
3. public static int MAX_PRIORITY = 10
• The default setting is NORM_PRIORITY. Most user-
level processes should use NORM_PRIORITY.
Java synchronization
• Generally threads use their own data and
methods provided inside their run() methods.
• But if we wish to use data and methods outside
the thread’s run() method, they may compete for
the same resources and may lead to serious
problems.
• Java enables us to overcome this problem using a
technique known as Synchronization.
For ex.: One thread may try to read a record from a
file while another is still writing to the same file.
Java synchronization contd.
• When the method declared as synchronized,
Java creates a "monitor" and hands it over to
the thread that calls the method first time.
synchronized (lock-object)
{
.......... // code here is synchronized
}
deadlock
• Deadlock describes a situation where two or more
threads are blocked forever, waiting for each other.
• when two or more threads are waiting to gain
control on a resource.
For example, assume that the thread A must
access Method1 before it can release Method2, but
the thread B cannot release Method1 until it gets
holds of Method2.
deadlock
THANKYOU…
Ad

More Related Content

Similar to unit3 Exception Handling multithreadingppt.pptx (20)

Threads in Java
Threads in JavaThreads in Java
Threads in Java
HarshaDokula
 
Multi-Threading in Java power point presenetation
Multi-Threading in Java power point presenetationMulti-Threading in Java power point presenetation
Multi-Threading in Java power point presenetation
AshokRachapalli1
 
U4 JAVA.pptx
U4 JAVA.pptxU4 JAVA.pptx
U4 JAVA.pptx
madan r
 
Multithreading in java
Multithreading in javaMultithreading in java
Multithreading in java
Arafat Hossan
 
07. Parbdhdjdjdjsjsjdjjdjdjjkdkkdkdkt.pptx
07. Parbdhdjdjdjsjsjdjjdjdjjkdkkdkdkt.pptx07. Parbdhdjdjdjsjsjdjjdjdjjkdkkdkdkt.pptx
07. Parbdhdjdjdjsjsjdjjdjdjjkdkkdkdkt.pptx
nimbalkarvikram966
 
web programming-Multithreading concept in Java.ppt
web programming-Multithreading concept in Java.pptweb programming-Multithreading concept in Java.ppt
web programming-Multithreading concept in Java.ppt
mcjaya2024
 
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
 
Multithreading in java
Multithreading in javaMultithreading in java
Multithreading in java
Lovely Professional University
 
java.pptxytbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
java.pptxytbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbjava.pptxytbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
java.pptxytbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
jakjak36
 
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
 
PROGRAMMING IN JAVA-unit 3-part II
PROGRAMMING IN JAVA-unit 3-part IIPROGRAMMING IN JAVA-unit 3-part II
PROGRAMMING IN JAVA-unit 3-part II
SivaSankari36
 
Multithreading in java
Multithreading in javaMultithreading in java
Multithreading in java
Monika Mishra
 
Concept of Java Multithreading-Partially.pptx
Concept of Java Multithreading-Partially.pptxConcept of Java Multithreading-Partially.pptx
Concept of Java Multithreading-Partially.pptx
SahilKumar542
 
Threading concepts
Threading conceptsThreading concepts
Threading concepts
Raheemaparveen
 
Basic of Multithreading in JAva
Basic of Multithreading in JAvaBasic of Multithreading in JAva
Basic of Multithreading in JAva
suraj pandey
 
Multi threading
Multi threadingMulti threading
Multi threading
gndu
 
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.pptx
multithreading.pptxmultithreading.pptx
multithreading.pptx
Sravanibitragunta
 
Java unit 12
Java unit 12Java unit 12
Java unit 12
Shipra Swati
 
Unit-3 MULTITHREADING-2.pdf
Unit-3 MULTITHREADING-2.pdfUnit-3 MULTITHREADING-2.pdf
Unit-3 MULTITHREADING-2.pdf
GouthamSoma1
 
Multi-Threading in Java power point presenetation
Multi-Threading in Java power point presenetationMulti-Threading in Java power point presenetation
Multi-Threading in Java power point presenetation
AshokRachapalli1
 
U4 JAVA.pptx
U4 JAVA.pptxU4 JAVA.pptx
U4 JAVA.pptx
madan r
 
Multithreading in java
Multithreading in javaMultithreading in java
Multithreading in java
Arafat Hossan
 
07. Parbdhdjdjdjsjsjdjjdjdjjkdkkdkdkt.pptx
07. Parbdhdjdjdjsjsjdjjdjdjjkdkkdkdkt.pptx07. Parbdhdjdjdjsjsjdjjdjdjjkdkkdkdkt.pptx
07. Parbdhdjdjdjsjsjdjjdjdjjkdkkdkdkt.pptx
nimbalkarvikram966
 
web programming-Multithreading concept in Java.ppt
web programming-Multithreading concept in Java.pptweb programming-Multithreading concept in Java.ppt
web programming-Multithreading concept in Java.ppt
mcjaya2024
 
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
 
java.pptxytbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
java.pptxytbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbjava.pptxytbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
java.pptxytbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
jakjak36
 
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
 
PROGRAMMING IN JAVA-unit 3-part II
PROGRAMMING IN JAVA-unit 3-part IIPROGRAMMING IN JAVA-unit 3-part II
PROGRAMMING IN JAVA-unit 3-part II
SivaSankari36
 
Multithreading in java
Multithreading in javaMultithreading in java
Multithreading in java
Monika Mishra
 
Concept of Java Multithreading-Partially.pptx
Concept of Java Multithreading-Partially.pptxConcept of Java Multithreading-Partially.pptx
Concept of Java Multithreading-Partially.pptx
SahilKumar542
 
Basic of Multithreading in JAva
Basic of Multithreading in JAvaBasic of Multithreading in JAva
Basic of Multithreading in JAva
suraj pandey
 
Multi threading
Multi threadingMulti threading
Multi threading
gndu
 
Threads in java, Multitasking and Multithreading
Threads in java, Multitasking and MultithreadingThreads in java, Multitasking and Multithreading
Threads in java, Multitasking and Multithreading
ssusere538f7
 
Unit-3 MULTITHREADING-2.pdf
Unit-3 MULTITHREADING-2.pdfUnit-3 MULTITHREADING-2.pdf
Unit-3 MULTITHREADING-2.pdf
GouthamSoma1
 

More from ArunPatrick2 (20)

Introduction to HTML table,width,height.ppt
Introduction to HTML table,width,height.pptIntroduction to HTML table,width,height.ppt
Introduction to HTML table,width,height.ppt
ArunPatrick2
 
introduction to java Multithreading presentation.pptx
introduction to  java Multithreading presentation.pptxintroduction to  java Multithreading presentation.pptx
introduction to java Multithreading presentation.pptx
ArunPatrick2
 
topic-6-Presentation e-commerce,B2B,B2C,C2C.ppt
topic-6-Presentation e-commerce,B2B,B2C,C2C.ppttopic-6-Presentation e-commerce,B2B,B2C,C2C.ppt
topic-6-Presentation e-commerce,B2B,B2C,C2C.ppt
ArunPatrick2
 
collectionsframework210616084411 (1).pptx
collectionsframework210616084411 (1).pptxcollectionsframework210616084411 (1).pptx
collectionsframework210616084411 (1).pptx
ArunPatrick2
 
Interfaces implements,presentation in java.ppt
Interfaces implements,presentation in java.pptInterfaces implements,presentation in java.ppt
Interfaces implements,presentation in java.ppt
ArunPatrick2
 
multithreading,thread and processinjava-210302183809.pptx
multithreading,thread and processinjava-210302183809.pptxmultithreading,thread and processinjava-210302183809.pptx
multithreading,thread and processinjava-210302183809.pptx
ArunPatrick2
 
InterfaceAbstractClass presentation.pptx
InterfaceAbstractClass presentation.pptxInterfaceAbstractClass presentation.pptx
InterfaceAbstractClass presentation.pptx
ArunPatrick2
 
presentation-on-exception-handling-160611180456 (1).pptx
presentation-on-exception-handling-160611180456 (1).pptxpresentation-on-exception-handling-160611180456 (1).pptx
presentation-on-exception-handling-160611180456 (1).pptx
ArunPatrick2
 
unit3multithreadingppt-copy-180122162204.pptx
unit3multithreadingppt-copy-180122162204.pptxunit3multithreadingppt-copy-180122162204.pptx
unit3multithreadingppt-copy-180122162204.pptx
ArunPatrick2
 
java package java package in java packages
java package java package in java packagesjava package java package in java packages
java package java package in java packages
ArunPatrick2
 
Interfaces in java.. introduction, classes, objects
Interfaces in java.. introduction, classes, objectsInterfaces in java.. introduction, classes, objects
Interfaces in java.. introduction, classes, objects
ArunPatrick2
 
javapackage,try,cthrow,finallytch,-160518085421 (1).pptx
javapackage,try,cthrow,finallytch,-160518085421 (1).pptxjavapackage,try,cthrow,finallytch,-160518085421 (1).pptx
javapackage,try,cthrow,finallytch,-160518085421 (1).pptx
ArunPatrick2
 
Exception Handling,finally,catch,throw,throws,try.pptx
Exception Handling,finally,catch,throw,throws,try.pptxException Handling,finally,catch,throw,throws,try.pptx
Exception Handling,finally,catch,throw,throws,try.pptx
ArunPatrick2
 
Inheritance,single,multiple.access rulepptx
Inheritance,single,multiple.access rulepptxInheritance,single,multiple.access rulepptx
Inheritance,single,multiple.access rulepptx
ArunPatrick2
 
Data Analytics overview,kDD process,mining Techniques.pptx
Data Analytics overview,kDD process,mining Techniques.pptxData Analytics overview,kDD process,mining Techniques.pptx
Data Analytics overview,kDD process,mining Techniques.pptx
ArunPatrick2
 
Data warehouse-complete-1-100227093028-phpapp01.pptx
Data warehouse-complete-1-100227093028-phpapp01.pptxData warehouse-complete-1-100227093028-phpapp01.pptx
Data warehouse-complete-1-100227093028-phpapp01.pptx
ArunPatrick2
 
DataWarehouse Architecture,daat mining,data mart,etl process.pptx
DataWarehouse Architecture,daat mining,data mart,etl process.pptxDataWarehouse Architecture,daat mining,data mart,etl process.pptx
DataWarehouse Architecture,daat mining,data mart,etl process.pptx
ArunPatrick2
 
Difference between Abstract class and Interface.pptx
Difference between Abstract class and Interface.pptxDifference between Abstract class and Interface.pptx
Difference between Abstract class and Interface.pptx
ArunPatrick2
 
finalkeywordinjava abstract,interface,implementation.-170702034453.ppt
finalkeywordinjava abstract,interface,implementation.-170702034453.pptfinalkeywordinjava abstract,interface,implementation.-170702034453.ppt
finalkeywordinjava abstract,interface,implementation.-170702034453.ppt
ArunPatrick2
 
InterfaceAbstractClass,interfaces,final keyword,.pptx
InterfaceAbstractClass,interfaces,final keyword,.pptxInterfaceAbstractClass,interfaces,final keyword,.pptx
InterfaceAbstractClass,interfaces,final keyword,.pptx
ArunPatrick2
 
Introduction to HTML table,width,height.ppt
Introduction to HTML table,width,height.pptIntroduction to HTML table,width,height.ppt
Introduction to HTML table,width,height.ppt
ArunPatrick2
 
introduction to java Multithreading presentation.pptx
introduction to  java Multithreading presentation.pptxintroduction to  java Multithreading presentation.pptx
introduction to java Multithreading presentation.pptx
ArunPatrick2
 
topic-6-Presentation e-commerce,B2B,B2C,C2C.ppt
topic-6-Presentation e-commerce,B2B,B2C,C2C.ppttopic-6-Presentation e-commerce,B2B,B2C,C2C.ppt
topic-6-Presentation e-commerce,B2B,B2C,C2C.ppt
ArunPatrick2
 
collectionsframework210616084411 (1).pptx
collectionsframework210616084411 (1).pptxcollectionsframework210616084411 (1).pptx
collectionsframework210616084411 (1).pptx
ArunPatrick2
 
Interfaces implements,presentation in java.ppt
Interfaces implements,presentation in java.pptInterfaces implements,presentation in java.ppt
Interfaces implements,presentation in java.ppt
ArunPatrick2
 
multithreading,thread and processinjava-210302183809.pptx
multithreading,thread and processinjava-210302183809.pptxmultithreading,thread and processinjava-210302183809.pptx
multithreading,thread and processinjava-210302183809.pptx
ArunPatrick2
 
InterfaceAbstractClass presentation.pptx
InterfaceAbstractClass presentation.pptxInterfaceAbstractClass presentation.pptx
InterfaceAbstractClass presentation.pptx
ArunPatrick2
 
presentation-on-exception-handling-160611180456 (1).pptx
presentation-on-exception-handling-160611180456 (1).pptxpresentation-on-exception-handling-160611180456 (1).pptx
presentation-on-exception-handling-160611180456 (1).pptx
ArunPatrick2
 
unit3multithreadingppt-copy-180122162204.pptx
unit3multithreadingppt-copy-180122162204.pptxunit3multithreadingppt-copy-180122162204.pptx
unit3multithreadingppt-copy-180122162204.pptx
ArunPatrick2
 
java package java package in java packages
java package java package in java packagesjava package java package in java packages
java package java package in java packages
ArunPatrick2
 
Interfaces in java.. introduction, classes, objects
Interfaces in java.. introduction, classes, objectsInterfaces in java.. introduction, classes, objects
Interfaces in java.. introduction, classes, objects
ArunPatrick2
 
javapackage,try,cthrow,finallytch,-160518085421 (1).pptx
javapackage,try,cthrow,finallytch,-160518085421 (1).pptxjavapackage,try,cthrow,finallytch,-160518085421 (1).pptx
javapackage,try,cthrow,finallytch,-160518085421 (1).pptx
ArunPatrick2
 
Exception Handling,finally,catch,throw,throws,try.pptx
Exception Handling,finally,catch,throw,throws,try.pptxException Handling,finally,catch,throw,throws,try.pptx
Exception Handling,finally,catch,throw,throws,try.pptx
ArunPatrick2
 
Inheritance,single,multiple.access rulepptx
Inheritance,single,multiple.access rulepptxInheritance,single,multiple.access rulepptx
Inheritance,single,multiple.access rulepptx
ArunPatrick2
 
Data Analytics overview,kDD process,mining Techniques.pptx
Data Analytics overview,kDD process,mining Techniques.pptxData Analytics overview,kDD process,mining Techniques.pptx
Data Analytics overview,kDD process,mining Techniques.pptx
ArunPatrick2
 
Data warehouse-complete-1-100227093028-phpapp01.pptx
Data warehouse-complete-1-100227093028-phpapp01.pptxData warehouse-complete-1-100227093028-phpapp01.pptx
Data warehouse-complete-1-100227093028-phpapp01.pptx
ArunPatrick2
 
DataWarehouse Architecture,daat mining,data mart,etl process.pptx
DataWarehouse Architecture,daat mining,data mart,etl process.pptxDataWarehouse Architecture,daat mining,data mart,etl process.pptx
DataWarehouse Architecture,daat mining,data mart,etl process.pptx
ArunPatrick2
 
Difference between Abstract class and Interface.pptx
Difference between Abstract class and Interface.pptxDifference between Abstract class and Interface.pptx
Difference between Abstract class and Interface.pptx
ArunPatrick2
 
finalkeywordinjava abstract,interface,implementation.-170702034453.ppt
finalkeywordinjava abstract,interface,implementation.-170702034453.pptfinalkeywordinjava abstract,interface,implementation.-170702034453.ppt
finalkeywordinjava abstract,interface,implementation.-170702034453.ppt
ArunPatrick2
 
InterfaceAbstractClass,interfaces,final keyword,.pptx
InterfaceAbstractClass,interfaces,final keyword,.pptxInterfaceAbstractClass,interfaces,final keyword,.pptx
InterfaceAbstractClass,interfaces,final keyword,.pptx
ArunPatrick2
 
Ad

Recently uploaded (20)

Myasthenia gravis (Neuromuscular disorder)
Myasthenia gravis (Neuromuscular disorder)Myasthenia gravis (Neuromuscular disorder)
Myasthenia gravis (Neuromuscular disorder)
Mohamed Rizk Khodair
 
Form View Attributes in Odoo 18 - Odoo Slides
Form View Attributes in Odoo 18 - Odoo SlidesForm View Attributes in Odoo 18 - Odoo Slides
Form View Attributes in Odoo 18 - Odoo Slides
Celine George
 
The role of wall art in interior designing
The role of wall art in interior designingThe role of wall art in interior designing
The role of wall art in interior designing
meghaark2110
 
BÀI TẬP BỔ TRỢ TIẾNG ANH 9 THEO ĐƠN VỊ BÀI HỌC - GLOBAL SUCCESS - CẢ NĂM (TỪ...
BÀI TẬP BỔ TRỢ TIẾNG ANH 9 THEO ĐƠN VỊ BÀI HỌC - GLOBAL SUCCESS - CẢ NĂM (TỪ...BÀI TẬP BỔ TRỢ TIẾNG ANH 9 THEO ĐƠN VỊ BÀI HỌC - GLOBAL SUCCESS - CẢ NĂM (TỪ...
BÀI TẬP BỔ TRỢ TIẾNG ANH 9 THEO ĐƠN VỊ BÀI HỌC - GLOBAL SUCCESS - CẢ NĂM (TỪ...
Nguyen Thanh Tu Collection
 
Ancient Stone Sculptures of India: As a Source of Indian History
Ancient Stone Sculptures of India: As a Source of Indian HistoryAncient Stone Sculptures of India: As a Source of Indian History
Ancient Stone Sculptures of India: As a Source of Indian History
Virag Sontakke
 
How to Create Kanban View in Odoo 18 - Odoo Slides
How to Create Kanban View in Odoo 18 - Odoo SlidesHow to Create Kanban View in Odoo 18 - Odoo Slides
How to Create Kanban View in Odoo 18 - Odoo Slides
Celine George
 
LDMMIA Reiki News Ed3 Vol1 For Team and Guests
LDMMIA Reiki News Ed3 Vol1 For Team and GuestsLDMMIA Reiki News Ed3 Vol1 For Team and Guests
LDMMIA Reiki News Ed3 Vol1 For Team and Guests
LDM Mia eStudios
 
LDMMIA Reiki Yoga S5 Daily Living Workshop
LDMMIA Reiki Yoga S5 Daily Living WorkshopLDMMIA Reiki Yoga S5 Daily Living Workshop
LDMMIA Reiki Yoga S5 Daily Living Workshop
LDM Mia eStudios
 
CNS infections (encephalitis, meningitis & Brain abscess
CNS infections (encephalitis, meningitis & Brain abscessCNS infections (encephalitis, meningitis & Brain abscess
CNS infections (encephalitis, meningitis & Brain abscess
Mohamed Rizk Khodair
 
Mental Health Assessment in 5th semester bsc. nursing and also used in 2nd ye...
Mental Health Assessment in 5th semester bsc. nursing and also used in 2nd ye...Mental Health Assessment in 5th semester bsc. nursing and also used in 2nd ye...
Mental Health Assessment in 5th semester bsc. nursing and also used in 2nd ye...
parmarjuli1412
 
The History of Kashmir Karkota Dynasty NEP.pptx
The History of Kashmir Karkota Dynasty NEP.pptxThe History of Kashmir Karkota Dynasty NEP.pptx
The History of Kashmir Karkota Dynasty NEP.pptx
Arya Mahila P. G. College, Banaras Hindu University, Varanasi, India.
 
Pope Leo XIV, the first Pope from North America.pptx
Pope Leo XIV, the first Pope from North America.pptxPope Leo XIV, the first Pope from North America.pptx
Pope Leo XIV, the first Pope from North America.pptx
Martin M Flynn
 
Cultivation Practice of Turmeric in Nepal.pptx
Cultivation Practice of Turmeric in Nepal.pptxCultivation Practice of Turmeric in Nepal.pptx
Cultivation Practice of Turmeric in Nepal.pptx
UmeshTimilsina1
 
Botany Assignment Help Guide - Academic Excellence
Botany Assignment Help Guide - Academic ExcellenceBotany Assignment Help Guide - Academic Excellence
Botany Assignment Help Guide - Academic Excellence
online college homework help
 
Ajanta Paintings: Study as a Source of History
Ajanta Paintings: Study as a Source of HistoryAjanta Paintings: Study as a Source of History
Ajanta Paintings: Study as a Source of History
Virag Sontakke
 
TERMINOLOGIES,GRIEF PROCESS AND LOSS AMD ITS TYPES .pptx
TERMINOLOGIES,GRIEF PROCESS AND LOSS AMD ITS TYPES .pptxTERMINOLOGIES,GRIEF PROCESS AND LOSS AMD ITS TYPES .pptx
TERMINOLOGIES,GRIEF PROCESS AND LOSS AMD ITS TYPES .pptx
PoojaSen20
 
Transform tomorrow: Master benefits analysis with Gen AI today webinar, 30 A...
Transform tomorrow: Master benefits analysis with Gen AI today webinar,  30 A...Transform tomorrow: Master benefits analysis with Gen AI today webinar,  30 A...
Transform tomorrow: Master benefits analysis with Gen AI today webinar, 30 A...
Association for Project Management
 
Chemotherapy of Malignancy -Anticancer.pptx
Chemotherapy of Malignancy -Anticancer.pptxChemotherapy of Malignancy -Anticancer.pptx
Chemotherapy of Malignancy -Anticancer.pptx
Mayuri Chavan
 
Origin of Brahmi script: A breaking down of various theories
Origin of Brahmi script: A breaking down of various theoriesOrigin of Brahmi script: A breaking down of various theories
Origin of Brahmi script: A breaking down of various theories
PrachiSontakke5
 
spinal cord disorders (Myelopathies and radiculoapthies)
spinal cord disorders (Myelopathies and radiculoapthies)spinal cord disorders (Myelopathies and radiculoapthies)
spinal cord disorders (Myelopathies and radiculoapthies)
Mohamed Rizk Khodair
 
Myasthenia gravis (Neuromuscular disorder)
Myasthenia gravis (Neuromuscular disorder)Myasthenia gravis (Neuromuscular disorder)
Myasthenia gravis (Neuromuscular disorder)
Mohamed Rizk Khodair
 
Form View Attributes in Odoo 18 - Odoo Slides
Form View Attributes in Odoo 18 - Odoo SlidesForm View Attributes in Odoo 18 - Odoo Slides
Form View Attributes in Odoo 18 - Odoo Slides
Celine George
 
The role of wall art in interior designing
The role of wall art in interior designingThe role of wall art in interior designing
The role of wall art in interior designing
meghaark2110
 
BÀI TẬP BỔ TRỢ TIẾNG ANH 9 THEO ĐƠN VỊ BÀI HỌC - GLOBAL SUCCESS - CẢ NĂM (TỪ...
BÀI TẬP BỔ TRỢ TIẾNG ANH 9 THEO ĐƠN VỊ BÀI HỌC - GLOBAL SUCCESS - CẢ NĂM (TỪ...BÀI TẬP BỔ TRỢ TIẾNG ANH 9 THEO ĐƠN VỊ BÀI HỌC - GLOBAL SUCCESS - CẢ NĂM (TỪ...
BÀI TẬP BỔ TRỢ TIẾNG ANH 9 THEO ĐƠN VỊ BÀI HỌC - GLOBAL SUCCESS - CẢ NĂM (TỪ...
Nguyen Thanh Tu Collection
 
Ancient Stone Sculptures of India: As a Source of Indian History
Ancient Stone Sculptures of India: As a Source of Indian HistoryAncient Stone Sculptures of India: As a Source of Indian History
Ancient Stone Sculptures of India: As a Source of Indian History
Virag Sontakke
 
How to Create Kanban View in Odoo 18 - Odoo Slides
How to Create Kanban View in Odoo 18 - Odoo SlidesHow to Create Kanban View in Odoo 18 - Odoo Slides
How to Create Kanban View in Odoo 18 - Odoo Slides
Celine George
 
LDMMIA Reiki News Ed3 Vol1 For Team and Guests
LDMMIA Reiki News Ed3 Vol1 For Team and GuestsLDMMIA Reiki News Ed3 Vol1 For Team and Guests
LDMMIA Reiki News Ed3 Vol1 For Team and Guests
LDM Mia eStudios
 
LDMMIA Reiki Yoga S5 Daily Living Workshop
LDMMIA Reiki Yoga S5 Daily Living WorkshopLDMMIA Reiki Yoga S5 Daily Living Workshop
LDMMIA Reiki Yoga S5 Daily Living Workshop
LDM Mia eStudios
 
CNS infections (encephalitis, meningitis & Brain abscess
CNS infections (encephalitis, meningitis & Brain abscessCNS infections (encephalitis, meningitis & Brain abscess
CNS infections (encephalitis, meningitis & Brain abscess
Mohamed Rizk Khodair
 
Mental Health Assessment in 5th semester bsc. nursing and also used in 2nd ye...
Mental Health Assessment in 5th semester bsc. nursing and also used in 2nd ye...Mental Health Assessment in 5th semester bsc. nursing and also used in 2nd ye...
Mental Health Assessment in 5th semester bsc. nursing and also used in 2nd ye...
parmarjuli1412
 
Pope Leo XIV, the first Pope from North America.pptx
Pope Leo XIV, the first Pope from North America.pptxPope Leo XIV, the first Pope from North America.pptx
Pope Leo XIV, the first Pope from North America.pptx
Martin M Flynn
 
Cultivation Practice of Turmeric in Nepal.pptx
Cultivation Practice of Turmeric in Nepal.pptxCultivation Practice of Turmeric in Nepal.pptx
Cultivation Practice of Turmeric in Nepal.pptx
UmeshTimilsina1
 
Botany Assignment Help Guide - Academic Excellence
Botany Assignment Help Guide - Academic ExcellenceBotany Assignment Help Guide - Academic Excellence
Botany Assignment Help Guide - Academic Excellence
online college homework help
 
Ajanta Paintings: Study as a Source of History
Ajanta Paintings: Study as a Source of HistoryAjanta Paintings: Study as a Source of History
Ajanta Paintings: Study as a Source of History
Virag Sontakke
 
TERMINOLOGIES,GRIEF PROCESS AND LOSS AMD ITS TYPES .pptx
TERMINOLOGIES,GRIEF PROCESS AND LOSS AMD ITS TYPES .pptxTERMINOLOGIES,GRIEF PROCESS AND LOSS AMD ITS TYPES .pptx
TERMINOLOGIES,GRIEF PROCESS AND LOSS AMD ITS TYPES .pptx
PoojaSen20
 
Transform tomorrow: Master benefits analysis with Gen AI today webinar, 30 A...
Transform tomorrow: Master benefits analysis with Gen AI today webinar,  30 A...Transform tomorrow: Master benefits analysis with Gen AI today webinar,  30 A...
Transform tomorrow: Master benefits analysis with Gen AI today webinar, 30 A...
Association for Project Management
 
Chemotherapy of Malignancy -Anticancer.pptx
Chemotherapy of Malignancy -Anticancer.pptxChemotherapy of Malignancy -Anticancer.pptx
Chemotherapy of Malignancy -Anticancer.pptx
Mayuri Chavan
 
Origin of Brahmi script: A breaking down of various theories
Origin of Brahmi script: A breaking down of various theoriesOrigin of Brahmi script: A breaking down of various theories
Origin of Brahmi script: A breaking down of various theories
PrachiSontakke5
 
spinal cord disorders (Myelopathies and radiculoapthies)
spinal cord disorders (Myelopathies and radiculoapthies)spinal cord disorders (Myelopathies and radiculoapthies)
spinal cord disorders (Myelopathies and radiculoapthies)
Mohamed Rizk Khodair
 
Ad

unit3 Exception Handling multithreadingppt.pptx

  • 2. TOPIC INCLUDES:  Introduction to Thread  Creation of Thread  Life cycle of Thread  Stopping and Blocking a Thread  Using Thread Methods  Thread Priority  Thread Synchronization  DeadLock
  • 3. INTRODUCTION TO THREAD • Process and Thread are two basic units of Java program execution. • Process: A process is a self contained execution environment and it can be seen as a program or application. • Thread: It can be called lightweight process • Thread requires less resources to create and exists in the process • Thread shares the process resources
  • 5. MULTITHREADING • Multithreading in java is a process of executing multiple processes simultaneously • A program is divided into two or more subprograms, which can be implemented at the same time in parallel. • Multiprocessing and multithreading, both are used to achieve multitasking. • Java Multithreading is mostly used in games, animation etc.
  • 7. MULTITHREADING Contd. ADVANTAGE:  It doesn't block the user  can perform many operations together so it saves time.  Threads are independent so it doesn't affect other threads
  • 8. CREATING THREAD • Threads are implemented in the form of objects. • The run() and start() are two inbuilt methods which helps to thread implementation • The run() method is the heart and soul of any thread – It makes up the entire body of a thread • The run() method can be initiating with the help of start() method.
  • 9. CREATING THREAD Contd. CREATING THREAD 1. By extending Thread class 2. By implementing Runnable interface
  • 10. CREATING THREAD Contd. 1. By Extending Thread class class Multi extends Thread // Extending thread class { public void run() // run() method declared { System.out.println("thread is running..."); } public static void main(String args[]) { Multi t1=new Multi(); //object initiated t1.start(); // run() method called through start() } } Output: thread is running…
  • 11. CREATING THREAD Contd. 2. By implementing Runnable interface  Define a class that implements Runnable interface.  The Runnable interface has only one method, run(), that is to be defined in the method with the code to be executed by the thread.
  • 12. CREATING THREAD Contd. 2. By implementing Runnable interface class Multi3 implements Runnable // Implementing Runnable interface { public void run() { System.out.println("thread is running..."); } public static void main(String args[]) { Multi3 m1=new Multi3(); // object initiated for class Thread t1 =new Thread(m1); // object initiated for thread t1.start(); } } Output: thread is running…
  • 13. LIFE cycle of a thread • During the life time of a thread, there are many states it can enter. • They include: 1. Newborn state 2. Runnable state 3. Running state 4. Blocked state 5. Dead state
  • 14. LIFE cycle of a thread contd.
  • 15. LIFE cycle of a thread contd. Newborn State:  The thread is born and is said to be in newborn state.  The thread is not yet scheduled for running.  At this state, we can do only one of the following: • Schedule it for running using start() method. • Kill it using stop() method.
  • 16. LIFE cycle of a thread contd. Runnable State:  The thread is ready for execution  Waiting for the availability of the processor.  The thread has joined the queue
  • 17. LIFE cycle of a thread contd. Running State: • Thread is executing • The processor has given its time to the thread for its execution. • The thread runs until it gives up control on its own or taken over by other threads.
  • 18. LIFE cycle of a thread contd. Blocked State: • A thread is said to be blocked • It is prevented to entering into the runnable and the running state. • This happens when the thread is suspended, sleeping, or waiting in order to satisfy certain requirements. • A blocked thread is considered "not runnable" but not dead and therefore fully qualified to run again. • This state is achieved when we Invoke suspend() or sleep() or wait() methods.
  • 19. LIFE cycle of a thread contd. Dead State: • Every thread has a life cycle. • A running thread ends its life when it has completed executing its run( ) method. It is a natural death. • A thread can be killed in born, or in running, or even in "not runnable" (blocked) condition. • It is called premature death. • This state is achieved when we invoke stop() method or the thread completes it execution.
  • 20. Thread methods • Thread is a class found in java.lang package. Method Signature Description String getName() Retrieves the name of running thread in the current context in String format void start() This method will start a new thread of execution by calling run() method of Thread/runnable object. void run() This method is the entry point of the thread. Execution of thread starts from this method. void sleep(int sleeptime) This method suspend the thread for mentioned time duration in argument (sleeptime in ms) void yield() By invoking this method the current thread pause its execution temporarily and allow other threads to execute. void join() This method used to queue up a thread in execution. Once called on thread, current thread will wait till calling thread completes its execution boolean isAlive() This method will check if thread is alive or dead
  • 21. Stopping and blocking Stopping a thread: • To stop a thread from running further, we may do so by calling its stop() method. • This causes a thread to stop immediately and move it to its dead state. • It forces the thread to stop abruptly before its completion • It causes premature death. • To stop a thread we use the following syntax: thread.stop();
  • 22. Stopping and blocking Blocking a Thread: • A thread can also be temporarily suspended or blocked from entering into the runnable and subsequently running state, 1. sleep(t) // blocked for ‘t’ milliseconds 2. suspend() // blocked until resume() method is invoked 3. wait() // blocked until notify () is invoked
  • 23. Thread priority • Each thread is assigned a priority, which affects the order in which it is scheduled for running. • Java permits us to set the priority of a thread using the setPriority() method as follows: ThreadName.setPriority(int Number);
  • 24. Thread priority contd. • The intNumber is an integer value to which the thread's priority is set. The Thread class defines several priority constants: 1. public static int MIN_PRIORITY = 1 2. public static int NORM_PRIORITY = 5 3. public static int MAX_PRIORITY = 10 • The default setting is NORM_PRIORITY. Most user- level processes should use NORM_PRIORITY.
  • 25. Java synchronization • Generally threads use their own data and methods provided inside their run() methods. • But if we wish to use data and methods outside the thread’s run() method, they may compete for the same resources and may lead to serious problems. • Java enables us to overcome this problem using a technique known as Synchronization. For ex.: One thread may try to read a record from a file while another is still writing to the same file.
  • 26. Java synchronization contd. • When the method declared as synchronized, Java creates a "monitor" and hands it over to the thread that calls the method first time. synchronized (lock-object) { .......... // code here is synchronized }
  • 27. deadlock • Deadlock describes a situation where two or more threads are blocked forever, waiting for each other. • when two or more threads are waiting to gain control on a resource. For example, assume that the thread A must access Method1 before it can release Method2, but the thread B cannot release Method1 until it gets holds of Method2.
  翻译: