Java 쓰레드

song yuheon·2023년 8월 27일
0

Java

목록 보기
28/46
post-thumbnail

쓰레드의 역할

Java 프로그램이 JVM(Java Virtual Machine)에서 실행될 때, 가장 먼저 Java Main 쓰레드가 생성되어 시작됩니다. 이 Java Main 쓰레드는 프로세스 실행과 동시에 반드시 생성되며, 실행된다.

멀티 쓰레드의 장단점

  • 장점:

    • 성능 향상: 작업을 병렬로 수행하여 전체적인 성능을 향상시킬 수 있다
    • 자원 공유: 스택을 제외한 메모리를 공유함으로써 자원 활용을 효율적으로 할 수 있다.
    • 응답성 강화: 응답성과 작업을 분리하여 신속한 응답을 제공할 수 있다.
  • 단점:

    • 자원 공유 문제: 프로세스 자원을 공유하면서 동기화 문제가 발생할 수 있다.
    • 교착 상태 발생 가능성: 데드락과 같은 문제가 발생할 수 있다.

쓰레드 구현 방법

  • Thread 클래스 상속
public class TestThread extends Thread {
    @Override
    public void run() {
        // 쓰레드 작업 내용
    }
}

TestThread thread = new TestThread(); // 쓰레드 생성
thread.start(); // 쓰레드 시작
  • Runnable 인터페이스 구현
public class TestRunnable implements Runnable {
    @Override
    public void run() {
        // 쓰레드 작업 내용 
    }
}

Runnable run = new TestRunnable();
Thread thread = new Thread(run); // 쓰레드 생성
thread.start(); // 쓰레드 시작
  • 람다식 활용
    람다식과 람다 함수의 차이를 이해하면, Runnable 인터페이스의 함수를 대체하는 람다 함수를 활용할 수 있다.
profile
backend_Devloper

0개의 댓글