package ch03;
import java.util.Scanner;
class MyThread extends Thread {
boolean flag = true;
@Override
public void run() {
while(flag) {
System.out.print("-");
try {
Thread.sleep(300);
} catch (InterruptedException e) {
e.printStackTrace();
}
}//무한루프 돌면서 대기(이벤트같은것들)
}
}
public class TerminateThread {
public static void main(String[] args) {
System.out.println("작업자를 생성하겠습니다.");
//메인 쓰레드가 작업자를 생성
MyThread thread1 = new MyThread();
//작업자 1이 작업을 시작(run 메서드 호출 )
thread1.start();
//메인 쓰레드가 작업함
// System.out.println("중지하려면 0번을 입력하시오");
// Scanner sc = new Scanner(System.in); //파일 입출력할떄 system.in배움
// int userInput = sc.nextInt();
// if(userInput == 0) {
//// thread1.stop();//deprecated (더이상사용하지마시오)
// thread1.flag = false;
// }
//문제 계속 값을 확인하고싶을 때 do while문 사용해서
int userInput;
Scanner sc = new Scanner(System.in);
do{
System.out.println("중지하려면 0번을 입력하시오");
userInput = sc.nextInt();
if(userInput == 0) {
thread1.flag = false;
}
} while(userInput != 0); // = 좌우가 사실인지 거짓인지 판별하는것 = 관계연산자
//while(true)면 계속 실행 false면 실행x
//while 은 계속 반복을 시켜주는
}
}