• August 29, 2014
  • Core Java
  • Comments Off on Difference between Thread.yield() and Thread.sleep() methods

Difference between Thread.yield() and Thread.sleep() methods

yield():

Causes the currently executing thread object to temporarily pause for giving a chance to the remaining waiting threads of the same priority to execute. If no such thread than same thread will continue its execution.

Syntax: public static void yield().

Example:

ThreadYieldExample.java

/**
 * This program is used to show the yield() method example.
 * @author javawithease
 */
class Test extends Thread{
	public void run(){
		for(int i=1;i<=5;i++){  
		   try{  
		    Thread.yield();  
		   }catch(Exception e){
			   System.out.println(e);
		   }  
		   System.out.println(i);  
		  }  
	}
}
 
public class ThreadYieldExample {
	public static void main(String args[]){
		//creating thread.
		Test thrd1 = new Test();
		Test thrd2 = new Test();
		Test thrd3 = new Test();
 
		//start threads.
		thrd1.start();  	  
		thrd2.start();
		thrd3.start();
	}
}

Output:

1
2 
3
4
5
1
2
3
4
1
2
3
4
5
5

Download this example.

sleep(long millis):

Causes the currently executing thread to sleep for the specified time as per our requirement.

Syntax: public static void sleep(long millis) .

Example:

ThreadSleepExample.java

/**
 * This program is used to show the sleep() method example.
 * @author javawithease
 */
class Test extends Thread{
	public void run(){
		for(int i=1;i<=5;i++){  
		   try{  
		    Thread.sleep(600);  
		   }catch(Exception e){
			   System.out.println(e);
		   }  
		   System.out.println(i);  
		  }  
	}
}
 
public class ThreadSleepExample {
	public static void main(String args[]){
		//creating thread.
		Test thrd1 = new Test();
		Test thrd2 = new Test();
		Test thrd3 = new Test();
 
		//start threads.
		thrd1.start();  	  
		thrd2.start();
		thrd3.start();
	}
}

Output:

1
1
1
2
2
2
3
3
3
4
4
4
5
5
5

Download this example.
 
Next Topic: Deadlock in java with example.
Previous Topic: Can we call run method directly?

Related Topics:

Multithreading in java.
Thread life cycle in java.
Way of creating thread in java.
Commonly used methods of Thread class.
Thread scheduling in java with example.
Thread priority in java with example.
Naming a thread in java with example.
Joining a thread in java with example.
Daemon thread in java with example.
Can we start a thread twice?
Can we call run method directly?
Difference between Thread.yield() and Thread.sleep() methods.
Deadlock in java with example.
Starvation in java with example.
Inter-thread communication in java with example.
Synchronization in java with example.
Synchronized method in java with example.
Static synchronization in java with example.
Synchronized block in java with example.

 


Comments are closed.