public void kill() {
		try {
			if (process == null)
				return;

			// Kill and wait for the process to be really killed
			process.destroy();
			process.waitFor();

			// Close the associated streams
			if (process.getInputStream() != null)
				process.getInputStream().close();
			if (process.getOutputStream() != null)
				process.getOutputStream().close();
			if (process.getErrorStream() != null)
				process.getErrorStream().close();

			// Cancel the scheduled killing
			if (process_killer != null)
				process_killer.cancel();
		} catch (Exception e) {
			// Ignore any exception
		}
	}