Java Threads Examples
- Threading is a facility to allow multiple tasks to run concurrently within a single process. Threads are
independent, concurrent execution through a program, and each thread has its own stack.
- In Java threads can be implemented in two ways. One is by 'Extending Thread Class' and the other way is by 'Implementing Runnable Interface'
- Extending Thread Class is required to 'override run()' method. The run method contains the actual logic to be executed by thread.
- Creation of thread object never starts execution, we need to call 'start()' method to run a thread. Examples gives you more details. Other methods supported by Threads are given below.
- join(): It makes to wait for this thread to die. You can wait for a thread to finish by calling its join() method.
- sleep(): It makes current executing thread to sleep for a specified interval of time. Time is in milli seconds.
- yield(): It makes current executing thread object to pause temporarily and gives control to other thread to execute.
- notify(): This method is inherited from Object class. This method wakes up a single thread that is waiting on this object's monitor to acquire lock.
- notifyAll(): This method is inherited from Object class. This method wakes up all threads that are waiting on this object's monitor to acquire lock.
- wait(): This method is inherited from Object class. This method makes current thread to wait until another thread invokes the notify() or the notifyAll() for this object.
Java Threads Sample Code Examples
doPost Vs doGet methods
doGet() method is used to get information, while doPost() method is used for posting information. doGet() requests can't send large
amount of information and is limited to 240-255 characters. However, doPost()requests passes all of its data, of unlimited length.
A doGet() request is appended to the request URL in a query string and this allows the exchange is visible to the client, whereas
a doPost() request passes directly over the socket connection as part of its HTTP request body and the exchange are invisible to the client.
The pessimist complains about the wind; the optimist expects it to change; the realist adjusts the sails.
-- William Arthur Ward