public void run() { try { while (!Thread.interrupted()) { // Blocks until next piece of toast is available: Toast t = dryQueue.take(); t.butter(); print(t); butteredQueue.put(t); } } catch (InterruptedException e) { print("Butterer interrupted"); } print("Butterer off"); }