|
|
Java Thread Yield Examples
- When a thread executes a thread yield, the executing thread is suspended and the CPU is given to some other runnable thread. This thread will wait until the CPU becomes available again.
- Technically, in process scheduler's terminology, the executing thread is put back into the ready queue of the processor and waits for its next turn.
Thread Yield Sample Code
Code: |
package com.myjava.threads;
import java.util.ArrayList;
import java.util.List;
public class MyThreadYield {
public static void main(String a[]){
List<ExmpThread> list = new ArrayList<ExmpThread>();
for(int i=0;i<3;i++){
ExmpThread et = new ExmpThread(i+5);
list.add(et);
et.start();
}
for(ExmpThread et:list){
try {
et.join();
} catch (InterruptedException ex) { }
}
}
}
class ExmpThread extends Thread{
private int stopCount;
public ExmpThread(int count){
this.stopCount = count;
}
public void run(){
for(int i=0;i<50;i++){
if(i%stopCount == 0){
System.out.println("Stoping thread: "+getName());
yield();
}
}
}
}
|
Example Output
Stoping thread: Thread-0
Stoping thread: Thread-1
Stoping thread: Thread-3
Stoping thread: Thread-1
Stoping thread: Thread-3
Stoping thread: Thread-1
Stoping thread: Thread-3
Stoping thread: Thread-1
Stoping thread: Thread-3
Stoping thread: Thread-1
Stoping thread: Thread-2
Stoping thread: Thread-2
Stoping thread: Thread-0
Stoping thread: Thread-2
Stoping thread: Thread-0
Stoping thread: Thread-2
Stoping thread: Thread-0
Stoping thread: Thread-2
Stoping thread: Thread-0
Other Thread Examples
|
|
|
Can interface be final?
No. We can not instantiate interfaces, so in order to make interfaces
useful we must create subclasses. The final keyword makes a class unable
to be extended.
When I do good, I feel good; when I do bad, I feel bad, and that is my religion.
-- Abraham Lincoln
|