public synchronized void close() {
public void close() {
	public synchronized void close() {		running = false;		if (socket == null) {			interrupt();		} else {			try {				socket.close();			} catch (IOException e) {				// TODO: consider logging			}		}	}