본문 바로가기
개발로그/JAVA

JAVA Thread 생성하기, 스레드 생성하기

by 개발김쿙 2023. 1. 10.

# 스레드 (Thread) ?

 프로그램, 애플리케이션  하나가 실행중인 것을 프로세스라고 합니다.

이 프로세스는 데이터, 컴퓨터의 자원, 스레드 로 구성 되어있습니다.

그 중에서 스레드는 데이터와 애플리케이션이 확보한 자원을 이용해서 작성한 소스코드를 실행합니다.

코드 실행의 흐름이라고 볼 수 있습니다.

 

 

 스레드를 배우저희코드행해왔던 것들은 실행의

메인스레드에서 하나스레드실행했었습니. 

를 하나의 스레드다 하여 싱글 레드 라고 합니. 

저는 제 스레드를 에 메인 스레도의 작업스레드생성하

여러 개의 스레드사용하멀티 스레드작업예정입니.

 

 

 가벼운 자면,

작업량때라혼자작업을 처리를 괜찮지, 늘어나

혼자서 작업을 처리하기시간도 오래걸리고 피곤해입니다.

하지만 혼자가 여럿이작업처리한다, 을 더 효율적으로 할 수 것입니.

 

그래스레드를 공부하고자 합니.

 

# 스레

스레드활용한다, 

1. 작업 스레드수행코드작성하

2. 작업스레드성 후 행시키는 의미합니.

 

 

그런자바는 객체지향 언어이므코드클래안에작성됩니.

이 때문에 스레드수행할 코드도 클래내부작성해주어야 합니.

run()이라는 메서드가 규정되메서에 스레드가 처리작업작성하도록 합니.

 

 

스레드생성봅시.

스레방법에두가지있습니.

1) Runnable 인터페이스구현객체에서 run()현하여 스레

2) Thread클래스속받는 하위클래작성 run()구현하스레

 

#1. Runnable 인터페이스 구현 객체에서 run() 현하여 스레 

첫번째 방법부터 해보겠습니다.

1. run() 메서스레드작업을 작성해주고 클래스로 구현합니.

 

2. 인터페이스를 객체구현한 후, 스레드생성합니.

3. 생성한 스레드start() 메서드를 이용시작해줍니.

 

4. 실행 

029정상적으.

 

# 5.

추가반복문실행해보면 메인스레드와 스레드1이 순서에 상관없병렬적으실행되을 알 수 있습니다.  

여러 번 실행해보면 각각 결과가 도출됩니다.

- 추가해준 반복: 메인 스레

- 생성해스레드 : thread1

1)

2)

3)

 이처럼 코드는 같으나 실행하면 매번 다른 결과가 나옵니다.


#2. Thread클래스 속받는 하위클래 작성  run() 구현하 스레 

2번방법은 거의 동일하, Thread상속받위클래스를 인스턴스화하여

스레드를 생성합니. 

 

 

실행결과는 1번 방법과 동일합니.

 

#3. 번외

그 외에도 이렇게 클래스정의하객체사용하

스레드를 생성하고 실행할 수 있습니.

 

결과일합니다. 

 

 

이처럼 스레드의 생성하는 법을 배웠습니다.

JAVA의 심화과정에 들어가니 더 깊숙하고 다양한 활용법을 배워서 내용은 많지만, 

실전에서 활용 가능할 수 있도록 더 연습하고 익숙해져야 할 것 같습니다.