묻고 답해요
132만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
해결됨나도코딩의 자바 기본편 - 풀코스 (20시간)
Thread가 동시에 실행이 안됩니다.
안녕하세요! 좋은 강의 감사합니다.다름이 아니라 Thread편과 Runnable편에서 나도코딩님이 쓰신 코드를 그대로 써서 실행을 했는데요.Thread가 동시에 실행되지 않고 사장 청소가 다 실행되고 나서 직원 청소가 진행이 됩니다.Thread가 동시에 실행되지 않는 이유를 스스로 찾지는 못했습니다.혹시 제가 쓰고 있는 컴퓨터가 성능이 안 좋은 것도 영향이 있나요? 실행을 누르면 7초에서 10초 뒤에 실행이 완료됩니다. 답변해주시면 감사하겠습니다. 좋은 하루 되세요!(밑에 실행 결과 첨부하겠습니다.)결과:-- 사장 청소 시작 --(사장) 1번방 청소 중(사장) 3번방 청소 중(사장) 5번방 청소 중(사장) 7번방 청소 중(사장) 9번방 청소 중--사장 청소 끝 ---- 직원 청소 시작 (Thread) --(직원) 2번방 청소 중 (Thread)(직원) 4번방 청소 중 (Thread)(직원) 6번방 청소 중 (Thread)(직원) 8번방 청소 중 (Thread)(직원) 10번방 청소 중 (Thread)--직원 청소 끝 -- (Thread)
-
해결됨Java TPC 실전프로젝트 (Java API 활용)
쓰레드 관련해서 질문합니다.
Runnable r=new DownloadBroker(dPath, fileName); Thread dLoad=new Thread(r); dLoad.start(); for(int i=0;i<10;i++) { try { Thread.sleep(1000); } catch (Exception e) { e.printStackTrace(); } System.out.print(""+(i+1)); } 쓰레드 관련해서 이해가 부족해서 이 부분이 이해가 되지 않습니다. dLoad.start(); 하면 다운로드가 이루어지고 1. Thread.sleep(1000);은 메인 쓰레드를 10초 후에 종료한다는 뜻인거 같은데, 이렇게 하는 이유가 있나요? 2. Runnable 객체를 만들어 Thread 객체에 생성자로 담은 후 dLoad.start();하는 과정에서 Runnable객체는 어떤 의미이며, Thread 객체를 생성(이것도 궁금)해서 dLoad.start()하는 부분이 궁금합니다. + 자바 기본 강좌 Stream에 관련된 부분도 만드시면 바로 수강하겠습니다. InputStream, BufferedReader 등등 조금 어렵다고 생각이 드네요. 대충은 알겠는데 ㅠㅠ