은 정말 다음 스레드를 시작 같은, 그것은 잠들게하고 싶지 않은 대신스레드를 시작하지만 특정 시간 동안 스레드를 유지하려면 어떻게해야합니까?
Thread.start();
Thread.sleep(3000); //*Example*
, 나는이 같은이 뭔가 싶어 (그리고 나는이 아마추어 그림에 대해 사과) :
Thread.start(3000) //*thread will be given a certain amount of time to execute*
//*After 3000 milliseconds, the thread stops and or sleeps*
내가 특정 시간 동안 사용자 입력을하는 프로그램/미니 게임을 만들고 있기 때문에이 작업을 수행하고 있습니다. 기본적으로 사용자는 특정 문자/숫자/문자를 입력하는 데 5 초가 걸리고 그 시간이 지나면 입력 스트림이 잘립니다. 종류의 같은 :
Scanner kb = new Scanner(System.in);
int num = kb.nextInt();
kb.close() //*Closes kb and input stream in turn*
사용 A [java.util.timer (http://docs.oracle.com/javase/7/docs/api/java/util/Timer.html) .. '에 스레드 시설 배경 스레드에서 향후 실행을 위해 작업을 예약하십시오. 작업을 한 번만 실행하거나 정기적으로 반복 실행하도록 예약 할 수 있습니다. " – nachokk
잘못된 방식으로 생각하고 있습니다. 스레드에 의해 수행되는 작업은 부적절합니다. 귀하의 질문은 "시간이 너무 오래 걸리는 경우 작업을 어떻게 시간 초과시킬 수 있습니까?"입니다. 내부에서 스레드로 전달하여 수행해야 할 작업을 수행하지 마십시오. 먼저 수행해야 할 작업을 코딩합니다. –