I am running multiple threads (Assume Thread1,Thread2,Thread3) for doing single operation.If any one of the threads done that operation(Thread2) then the remaining threads(Thread1,Thread3) will stop suddenly.
please guide me how to kill that remaining threads suddenly.I don't know how to stop it suddenly.(Marked in red color).
Ex:
import java.util.Random;
class RandomGenerator implements Runnable{
public void run(){
random();
}
public void random(){
Random random = new Random();
int randomNum = 0;
do{
randomNum = random.nextInt(100);
}while(!(randomNum == 5));
System.out.println(Thread.currentThread() + " identified the random number : " + randomNum);
}
}
public class TestThread1 {
public static void main(
String args[]){
RandomGenerator rg = new RandomGenerator();
Thread th1 = new Thread(rg,"Thread1");
th1.start();
Thread th2 = new Thread(rg,"Thread2");
th2.start();
Thread th3 = new Thread(rg,"Thread3");
th3.start();
}
}
Actual output :
Thread[Thread2,5,main] identified the random number : 5
Thread[Thread1,5,main] identified the random number : 5
Thread[Thread3,5,main] identified the random number : 5
Expected output:
Thread[Thread2,5,main] identified the random number : 5
Thread1 killed
Thread2 Killed
Note: Don't use boolean variable to check continuously.