public static void process(Process process, String[] cmd, IoSession session)
			throws IOException {
		try {
			BufferedReader infoBr = null;
			BufferedReader errorBr = null;

			sendNormalMsgToClient(process, infoBr, session);

			sendErrorMsgToClient(process, errorBr, session);

			int val = process.waitFor();
			if (val != 0) {
				log.error("val still has message {} !", val);
			}

		} catch (InterruptedException e) {
			log.error("process has been destroy by InterruptedException!");
			if (null != process) {
				process.destroy();
				process = null;
			}
			session.getWriteRequestQueue().clear(session);
		} finally {
			if (null != process) {
				process.destroy();
				process = null;
			}

			session.close(false);
			log.info(
					"process has been destroy normal! session is isWriteSuspended? {} , is closed? {}.",
					session.isWriteSuspended(), session.isClosing());
		}

	}