public class DiningSavages { public static void main(String[] args) { final int SIZE = 1; final int SAVAGES = 2; Pot pot = new Pot(SIZE); Cook cook = new Cook(pot); Savage[] savage = new Savage[SAVAGES]; for (int i = 0; i < SAVAGES; i++) { savage[i] = new Savage(pot); } cook.start(); for (int i = 0; i < SAVAGES; i++) { savage[i].start(); } for (int i = 0; i < SAVAGES; i++) { try { savage[i].join(); } catch (InterruptedException e) { e.printStackTrace(); } } cook.interrupt(); try { cook.join(); } catch (InterruptedException e) { e.printStackTrace(); } } }