티스토리 뷰

Dev Story/Java

[JavaAPI] java.lang.Thread

Dynatic 2015. 3. 7. 15:17

public class Thread

extends Object

implements Runnable


All implemented Interfaces : Runnable


Direct Known Subclasses : ForkJoinWorkerThread


JVM은 멀티쓰레딩을 지원.


모든 쓰레드에는 priority가 존재. 높을수록 우선순위가 높음. 코드 상에서 쓰레드 객체가 생성되면 생성이 수행된 해당 쓰레드의 priority를 초기값으로 받음. 데몬 쓰레드에서 생성된 클래스는 데몬쓰레드가 됨.


JVM이 시작될때 보통 main으로 알려진 하나의 데몬이 아닌 싱글 쓰레드가 존재. JVM은 다음과 같은 경우 중 하나가 발생할 때까지 main쓰레드를 계속 수행.


1. java.lang.Runtime 클래스의 exit 메소드가 호출되고 security manager가 이 exit 명령을 허용 할 경우.

2. All threads that are not daemon threads have died, either by returning from the call to the run method or by throwing an exception that propagates beyond the run method.


새로운 쓰레드를 만드는 방법은 2가지가 있음.

첫째는 Thread 클래스를 상속받은 서브클래스를 선언하는 것. 이 서브클래스에서 run 메소드를 오버라이드함.

둘째는 Runnable 인터페이스를 구현한 클래스를 선언하는 것. 이 클래스에서 run 메소드를 구현해야함. 






댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
글 보관함