@Override public void run() { while (running) { System.out.println("Philosopher #" + getID() + " is thinking..."); sleep(rand(50, 150)); System.out.println("Philosopher #" + getID() + " is hungry..."); left.pickUp(this); sleep(rand(5, 15)); right.pickUp(this); System.out.println("Philosopher #" + getID() + " is eating..."); sleep(rand(50, 150)); right.drop(); sleep(rand(5, 15)); left.drop(); } }
public void run() { try { while (!Thread.interrupted()) { print(this + " " + "thinking"); pause(); // Philosopher becomes hungry print(this + " " + "grabbing right"); right.take(); print(this + " " + "grabbing left"); left.take(); print(this + " " + "eating"); pause(); right.drop(); left.drop(); } } catch (InterruptedException e) { print(this + " " + "exiting via interrupt"); } }
@Override public void run() { // TODO 自动生成的方法存根 try { while (!Thread.interrupted()) { print(this + " " + "thinking"); pause(); print(this + " " + "grabbing right"); right.take(); print(this + " " + "grabbing left"); left.take(); print(this + " " + "eating"); pause(); right.drop(); left.drop(); } } catch (InterruptedException e) { print(this + " " + "exiting via interrupt"); } }