
어째서~
CPU 사용량이 높은 작업
코어개수 + 1
I/O 작업(파일 처리, 네트워크 처리 등)
(코어 개수*2)(I/O 시간을 고려하여 더 많은 스레드)
스레드를 이렇게 많이 만들 수 있다고?
내 생각에 이 사람들은 뇌도 좌뇌/우뇌/앞뇌/뒤뇌/윗뇌/아랫뇌 해서 6코어 두뇌로 살아가고 있는 것 같다
Thread 클래스를 상속한 후, run() 메소드를 오버라이딩하여 실행할 코드를 작성.
▶start()를 호출하면 새로운 스레드가 생성돼 실행됨.
▶ sleep(1000)을 사용하여 1초씩 대기하여 실행.
Thread 상속
Runnable 인터페이스를 구현한 후 Thread 객체를 생성할 때 사용.
▶ Thread thread = new Thread(New MyRunnable()); 형태로 실행.
Runnable 인터페이스를 구현한 클래스를 만들어준 것이다.
Runnable 구현
run()으로 직접 호출하면 단순한 메소드 호출이 되기 때문에
멀티 스레드는 동작되지 않으니start()로 호출하여 새로운 스레드를 생성시켜 병렬 실행을 해야한다고 한다.

근데 start()를 호출할 경우 두 개의 스레드가 동시에 실행되기에, 출력 순서는 랜덤이라고 한다.