Multithreading in hindi in java

एक साथ एक या एक से ज्यादा threads या sub-programs को run किया जाना Multithreading कहलता है।

सोचिये यहाँ सब mobile पर बात करते हुए खाना खा सकते है। और साथ ही TV भी देख सकते है। हमारा दिमाग इस तरह बना हुआ है। की हम एक साथ कई काम कर सकते है। इसे हम multitasking भी कह सकते है। इसी तरह जावा का कोई भी program task complete कर सकता है। Java के इस feature को multi-threading कहते है।

उदाहरण के लिए जब आपका program user input के लिए wait कर रहा है तो इस समय में वह दूसरा कोई काम complete कर सकता है। जैसे की database से connectivity की जा सकती है। या फिर कई काम हो सकते है इस दौरान।

एक multi-threading program के 2 या 2 से अधिक thread होते है। ये thread एक साथ execute किये जा सकते है। हर thread एक unique task complete करने के लिए responsible होती है। ये सभी threads main thread में होती है। आपके program की main थ्रेड main() method के साथ शुरू होती है। 

Thread Life Cycle

  1. New State
  2. Runnable State
  3. Running State
  4. Waiting State
  5. Dead State
New -> Runnable -> Running -> Destroyed
New -> Runnable -> Running -> Waiting -> Destroyed

New State :  यहाँ से thread की शुरुआत होती है। यहाँ पर thread का object create किया जाता है।

Ready/Runnable State : जब start() method को call किया करता है। तब thread New से Runnable State पर आ जाता है। ये execute होने के लिए Ready होता है |

Running State :  जब thread execution होना शुरू होता है, तब thread इस state पर होता है।

Waiting State : दुसरे thread को perform करने के लिए कुछ thread को block या waiting state पर होते है, waiting state पर जो thread होता है उसे resume किया जाता है।

Dead State : यहाँ पर thread का काम पूरा होकर वो बंद हो जाता है।

Example ::

public class CheckState extends Thread{
	
	public void run() {
		System.out.println("run method");
  }
  public static void main(String args[]){
	  
	CheckState t1 = new CheckState();
	CheckState t2= new CheckState();
	
	System.out.println("t1 State : " + t1.getState());
	System.out.println("t2 State : " + t2.getState());
		
	t1.start();
	System.out.println("t1 State : " + t1.getState());
	System.out.println("t2 State : " + t2.getState());

	t2.start();
	System.out.println("t1 State : " + t1.getState());
	System.out.println("t2 State : " + t2.getState());
    }
}
Output ::
t1 State : NEW
t2 State : NEW
t1 State : RUNNABLE
run method
t2 State : NEW
t1 State : TERMINATED
run method
t2 State : RUNNABLE

Leave a Comment