ThreadAA
1. 문자열 "AA" 300번 출력,
2. 결과확인을 위해 시간지연 10ms
public class ThreadAA extends Thread{
// "AA" 문자열 300번 출력
@Override
public void run() {
for (int i = 0; i < 300 ; i++) {
System.out.print("AA");
try {
Thread.sleep(10); // 시간 지연
} catch (InterruptedException e) {
e.printStackTrace();
} // try
}// for end
}
}
ThreadBB
1. 문자열 "BB" 300번 출력
2. 결과확인을 위해 시간지연 10ms
package Chapter13.Exercise02;
// "BB" 문자열 300번 출력
public class ThreadBB extends Thread{
@Override
public void run() {
for (int i = 0; i < 300 ; i++) {
System.out.print("BB");
try {
Thread.sleep(10); // 시간 지연
} catch (InterruptedException e) {
e.printStackTrace();
} // try end
}// for end
}
}
메인스레드
1.ThreadAA와 ThreadBB를 동작시킴
2.무한루프로 50ms마다 개행함
3.AA스레드와 BB스레드가 종료되면 무한루프 탈출
// aa 스레드와 bb스레드를 동작 시키고 50ms마다 개행함
public class MultiThreadTest {
public static void main(String[] args) throws InterruptedException {
ThreadAA aa = new ThreadAA();
ThreadBB bb = new ThreadBB();
aa.start();
bb.start();
while (true){
Thread.sleep(50); // 50ms마다 개행
System.out.println();
if(aa.getState()== Thread.State.TERMINATED && bb.getState()==Thread.State.TERMINATED){
break; // aa스레드와 bb스레드가 종료되면 무한 루프 탈출
}
} // while
System.out.println("메인스레드 종료");
} //main
}
[Thread] ThreadGroup : 그룹 지정 (0) | 2020.06.16 |
---|---|
[Thread] ThreadGroup 예제 : Group 미지정 (0) | 2020.06.15 |
Thread 의 생성 : Runnable 구현, Thread 상속 (0) | 2020.06.15 |
FileInputStream, OutPutStream,File 객체를 이용한 파일 복사 및 성능 테스트 (0) | 2020.06.15 |
FileInputStream 이용하여 File 객체 읽기 (0) | 2020.06.15 |
댓글 영역