Fix basierend auf aussage Sandro Leuchter
parent
f5ff3d11f1
commit
971573c3b1
|
|
@ -74,11 +74,8 @@ public class Philosopher extends Thread implements IPhilosopher {
|
||||||
private void startEating() throws InterruptedException {
|
private void startEating() throws InterruptedException {
|
||||||
table.lock();
|
table.lock();
|
||||||
try {
|
try {
|
||||||
while (left.essen | right.essen) {
|
while (left.essen || right.essen) {
|
||||||
if (left.essen) {
|
cond.await();
|
||||||
left.cond.await();
|
|
||||||
}
|
|
||||||
right.cond.await();
|
|
||||||
}
|
}
|
||||||
essen = true;
|
essen = true;
|
||||||
} finally {
|
} finally {
|
||||||
|
|
@ -90,7 +87,8 @@ public class Philosopher extends Thread implements IPhilosopher {
|
||||||
table.lock();
|
table.lock();
|
||||||
try {
|
try {
|
||||||
essen = false;
|
essen = false;
|
||||||
cond.signalAll();
|
left.cond.signal();
|
||||||
|
right.cond.signal();
|
||||||
} finally {
|
} finally {
|
||||||
table.unlock();
|
table.unlock();
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue