Thread.interrupt() should be the method you're looking for.
Be sure that your input-accessing methods also check for InterruptedException and ClosedByInterruptException.
Also look at the corresponding page in the Sun Concurrency Tutorial, as another solution suggests.