write a code,
we have two thread, one is printing even no and other print the odd no.
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 |
Which package is used for pattern matching with regular expressions?
What is a ternary operator in java?
What is a control variable example?
what is difference between abstraction and interface?
Is java util regex pattern thread safe?
What are latest features introduced with java 8?
Why do we use threads in java?
How infinite loop is declared?
How listener identify that the event came from a particular object?
How many bits are allocated to represent character of character sets - Unicode, ASCII, UTF-16, UTF-8?
What is flush buffer?
What function extracts specified characters from a string?