쓰레드 질문입니다!
354
작성한 질문수 11
안녕하세요? Thread 질문하려 합니다.
직원 청소 시작 (Thread) 메소드는 CleanThread에서 사용하여(즉 Thread 클래스 상속) 작성하였는데
사장 청소 시작은 Thread 클래스에서 상속 받지 않고 바로 Thread 클래스에서 메소드를 작성한 이유를 알고 싶습니다!
답변 1
0
안녕하세요?
자바 프로그램을 실행하면 기본적으로 메인 쓰레드라고 하는 하나의 쓰레드가 동작하게 됩니다. 이 곳에서 코드를 작성하게 되면 위에서 아래로 순서대로 코드가 실행되며 우리 예제에서는 '사장 청소 시작' 이 바로 그 부분입니다. 즉 Thread 를 상속하지 않고 그냥 메인 메소드에서 바로 cleanByBoss() 메소드를 호출하여 사장님이 청소를 하는 것이죠.
그런데 이와 동시에 직원의 청소도 함께 하기 위해서 별도의 쓰레드를 새로 생성하는 것입니다. 그래서 '직원 청소 시작' 은 말씀하신 것처럼 Thread 를 상속하는 CleanThread() 를 만들고 start() 를 통해 별도의 쓰레드에서 작업을 하도록 합니다. 그러면 사장(메인 쓰레드)님과 직원(별도의 쓰레드)의 청소가 함께 일어나는 효과를 낼 수 있지요!
궁금증 해결에 도움되길 바라겠습니다 😊
감사합니다.
0
감사합니다. 왜 콘솔창에 항상 -- 사장 청소 시작 -- 이 먼저 나오는지 궁금했는데, 메인 쓰레드가 먼저 실행되서 그런거였군요!
-> 아, 제가 잘못 이해했습니다. 메인 스레드와 서브 스레드 사이에도 순서를 알 수 없어서 -- 직원 청소 시작 -- 이 먼저 나오는 경우도 있네요😅
자바를 처음 배울 때 이런 고민이 드는 게 정상일까요?
1
146
2
static이 뭐였는지 기억이 안나요 ㅜㅜ
0
119
2
Iterator (알 수 없음) 데이터 삭제 후 초기화 관련 문의
0
70
1
사고력 키우는 법이 어떤게 있나요?
0
93
2
getter setter
0
103
2
섹션9. 66 메소드 오버로딩 시 질문이 있습니다.
0
80
1
안녕하세요 갑자기 프로그램 에러가 떠서 안되네요
0
76
2
변수 이름짓는법
0
114
2
intelli J 실행오류
0
115
2
혹시 이건 수학적 사고가 부족한 걸까요?
0
152
2
영상이 재생이 안됩니다.
0
167
3
이중 반복문 (후반전) 오른쪽으로 치우친 별 쌓기에 질문이 있습니다.
0
117
2
응용이 어렵습니다.
0
206
2
IntelliJ가 보이지 않습니다.
0
185
3
JDK 버전 문의
0
129
2
BlackBox 파일 내에서 메소드 정의
0
136
1
동기화
0
121
2
Iterator 문의
0
105
1
코드 순서 문의
0
142
1
클래스 메소드
0
149
2
Quiz_05 관련 질문드립니다 !
0
118
2
다운로드가 안됩니다
0
165
2
다형성
0
120
2
HashMap
0
80
2





