How to create thread
스레드 작성에는 2가지 방법이 있습니다.
1. 스레드 클래스를 확장하는 것으로
2. Runnable 인터페이스를 구현하는 것으로.
Thread class [스레드 클래스]
스레드 클래스는 생성자와 메소드를 제공하고, 스레드에서 작업을 수행합니다.
스레드 클래스는 오브젝트 클래스를 확장하고 Runnable 인터페이스를 구현합니다.
흔히 사용되는 스레드 클래스의 생성자
- Thread ()
- Thread (String name)
- Thread (Runnable r)
- Thread (Runnable r, String name)
흔히 사용되는 스레드 클래스의 메소드
1. Public void run(): 스레드에 대한 작업을 수행하는 데 사용됩니다.
2. Public void start(): 스레드에서 thread.JVM의 실행이 run() method를 호출하는 것을 시작합니다.
3. Public void sleep(long miliseconds): 현재 실행되는 스레드가 지정된 시간(초) 동안 정지하도록 합니다. (일시적으로 실행을 중지)
4. Public void join(): 스레드가 죽는 것을 기다립니다.
5. Public void join(long miliseconds): 스레드가 지정된 시간(초) 동안 죽는 것을 기다립니다.
6. Public int getPriority(): 스레드의 우선순위를 돌려줍니다.
7. Public int setPriority(int priority): 스레드의 우선순위를 변경합니다.
8. Public String getName(): 스레드의 이름을 돌려줍니다.
9. Public void setName(String name): 스레드의 이름을 변경합니다.
10. Public Thread currentThread(): 현재 실행되는 스레드의 레퍼런스를 돌려줍니다.
11. Public int getId(): 스레드의 id를 돌려줍니다.
12. Public Thread.State getState(): 스레드의 스테이트를 돌려줍니다.
13. Public boolean isAlive(): 스레드가 살아있다면 테스트합니다.
14. Public void yield(): 현재 실행되는 스레드가 일시적으로 정지되고, 다른 스레드가 실행됩니다.
15. Public void suspend(): 스레드를 중단하는데 사용합니다. (사용되지 않음)
16. Public void resume(): 중단된 스레드를 재개하는데 사용합니다 (사용되지 않음)
17. Public void stop(): 스레드를 정지시키는데 사용합니다. (사용되지 않음)
18. Public boolean isDaemon(): 스레드가 데몬 스레드라면 테스트합니다.
19. Public void setDaemon(boolean b): 사용자 스레드나 데몬스레드로 표시합니다.
20. Public void interrupt(): 스레드를 중단합니다.
21. Public boolean isInterrupted(): 스레드가 정지되었다면 테스트한다.
22. Public static boolean interrupted(): 현재 스레드가 정지되었다면 테스트 한다.
Runable 인터페이스
Runable 인터페이스는 인스턴스가 스레드에 의해 실행되도록 계획된 클래스에 의해 구현될 수 있습니다.
Runable 인터페이스는 오직 run()으로 된 메소드 만을 가집니다.
1. public void run(): 스레드를 위해 작업을 수행하는 데 사용됩니다.
Starting a thread:
스레드의 Start() method 클래스는 새로운 스레드를 만드는데 사용됩니다.
이것은 아래의 작업을 수행합니다.
- 새로운 스레드를 시작한다. (새로운 호출스택을 보유)
- 스레드는 새로운 스테으트에서 Runnable 스테이트로 움직인다.
- 스레드가 실행될 때, 타겟 run() 메소드가 실행될 수 있습니다.
1) By extending Thread class
class Multi extends Thread{
Public void run(){
System.out.println("thread is running...");
}
public static void main(String args[]{
Multi t1=new Multi();
t1.start();
}
}
Output : thread is running...
2) By implementing the Runnable interface
class Multi3 implements Runnable{
Public void run(){
System.out.println("thread is running...");
}
public static void main(String args[]{
Multi3 m1=new Multi3();
Thread t1 =new Thread(m1);
t1.start();
}
}
Output : thread is running...
영어원문내용출처 :http://www.javatpoint.com/
번역,의역 및 작성 : 초코토끼
검수 : 개발토끼
오역 및 오타의 지적은 겸손히 받겠습니다.
'IT Story > about Java' 카테고리의 다른 글
[ Java ] 자바 초보 강좌 : eclipse 이클립스 설치 (1) | 2016.11.17 |
---|---|
[ Java ] 자바 초보 강좌 : 자바 설치 (0) | 2016.11.12 |
Multithreading [멀티스레딩] in JAVA (0) | 2016.01.14 |
super keyword 자바 수퍼 키워드 (0) | 2015.11.20 |
Java Naming conventions 자바 명명 규칙 (0) | 2015.11.18 |