write a code,
we have two thread, one is printing even no and other print the odd no.
Answer Posted / umeshag89
public class EvenOdd {
public static void main(String[] args) {
final Printer printer = new Printer();
new Thread(new Runnable() {
@Override
public void run() {
int i = 1;
while (i < 100) {
printer.printOdd(i);
i = i + 2;
}
}
}).start();
new Thread(new Runnable() {
@Override
public void run() {
int i = 2;
while (i < 100) {
printer.printEven(i);
i = i + 2;
}
}
}).start();
}
static class Printer {
boolean isOdd = true;
synchronized public void printOdd(int number) {
while (!isOdd) {
try {
wait();
} catch (InterruptedException e) {
e.printStackTrace();
}
}
System.out.print(number + " ");
isOdd = false;
notify();
}
synchronized public void printEven(int number) {
while (isOdd) {
try {
wait();
} catch (InterruptedException e) {
e.printStackTrace();
}
}
System.out.print(number + " ");
isOdd = true;
notify();
}
}
}
| Is This Answer Correct ? | 0 Yes | 0 No |
Post New Answer View All Answers
Explain JMS in detail.
explain the concept of virtual method invocation in polymorphism in detail?
What is string made of?
How do you do absolute value in java?
How do you delete a list in java?
What is jee6?
What is a method header?
What is private static in java?
Is a boolean variable?
How you can force the garbage collection?
What is a null check?
What is immutable in java?
What is java object name?
Difference between arraylist and hashset in java?
What is scanner in java?