자바 쓰레드

2019. 7. 1. 13:55Java

728x90

쓰레드 : 모든 일의 기본 단위. 실제 OS에서 인식하고 작동하는 작업 단위. 메인메소드를 호출하는 것도 프로세스(프로그램이 실행될 때 프로세스에 할당된 메모리) 생성시 함께 생성되는 메인쓰레드를 통해서 이뤄진다.

 

 

쓰레드는 이미 클래스(Thread)가 있다. 그것을 잘 상속받아서 쓰면 된다.

 

쓰레드에는 항상 run()이라는 메소드가 있어야 한다. 그렇게 하기로 약속되어있다.

 

 

Thread class를 extends하면 run() 메소드 블록에 있는 내용을

메인메소드에서 start()로 실행한다.

 

run()을 실행하면 한 동작을 다 한 다음에 다음 동작을 한다.

st1와 st2라는 객체가 있을 때, start가 두 객체를 동시에 작업하다 보니 결과물은 st1 결과물과 st2 결과물이 섞여서 나오게 된다.

 

Thread class 안에는 sleep이라는 메소드가 있다.

(sleep = 쉴 시간. 100 = 0.1초이고 1000 = 1초)

그런데 sleep에도 예외가 발생할 수 있어서 try catch  구문을 쓴다.

 

Thread는 일의 우선순위를 생각해서 작업을 한다. 작업 우선순위를 정할 수 있다.

동시에 여러 일을 하기 위한 것이 thread이다.

 

thread를 상속받지 못하는 경우에는 thread 인터페이스를 제공한다.

implements runnable 하면 아직은 thread 가 아니다.

new 로 thread 객체를 만들어야 thread가 된다.

 

runnable()은 무조건 run()을 만들게 되어있다.

 

728x90
반응형

'Java' 카테고리의 다른 글

JSP 페이지 이동  (0) 2019.07.08
JSP 1부터 10까지 테이블에 담기  (0) 2019.07.08
오버로딩과 오버라이딩에 대한 짧은 설명  (0) 2019.07.01
자바의 4가지 접근지정자  (0) 2019.06.21
자바와 JDBC 연동 프로세스  (0) 2019.06.20