개발하는 히포
close
프로필 배경
프로필 로고

개발하는 히포

  • 분류 전체보기 (18)
    • 공지사항 (1)
    • Java & Kotlin (4)
    • Spring (7)
    • Server (0)
    • Database (2)
    • Network (1)
    • 공부방 (3)
  • 홈
  • 태그
  • 방명록
[Java] CompletableFuture 가이드 - 비동기 프로그래밍의 진화

[Java] CompletableFuture 가이드 - 비동기 프로그래밍의 진화

지난 시간에는 Future과 Callable의 기본적인 활용법에 대해서 알아보았다. 하지만 실제 개발을 하다 보면 Future만으로는 해결하기 어려운 상황들이 많이 발생한다.여러 비동기 작업을 연결하고 싶을 때비동기 작업의 결과를 조합하고 싶을 때예외 처리를 더 우아하게 하고 싶을 때이런 문제들을 해결하기 위해 Java 8에서 등장한 것이 바로 CompletableFuture이다. (Future은 Java 5에서 등장)따라서 이번 시간에는 CompletableFuture의 핵심 개념과 실무에서 활용할 수 있는 다양한 패턴들에 대해서 알아보도록 하자.Future의 한계점먼저 기존 Future 인터페이스의 한계점을 짚고 넘어가자.ExecutorService executor = Executors.newFixe..

  • format_list_bulleted Java & Kotlin
  • · 2025. 6. 26.
  • textsms
[Java] Future, Callable 정리

[Java] Future, Callable 정리

지난 시간에는 Future과 Callable의 활용에 대해서 알아보았다. 정상적으로 코드가 실행이 되어 아무런 문제가 없으면 좋겠지만, 개발자에게는 언제나 예외라는 경우가 존재한다. 그 외 작업을 중단하는 경우 등 다양한 상황에 대해서 추가로 알아보자. 따라서 이번 시간에는 Future 예외, 취소, ExecutorService의 작업 컬렉션에 대해서 알아보도록 하자.Future 인터페이스 주석으로 설명이 되어 있는 대로 cancel()은 완료되지 않은(시작되지 않았거나, 실행 중인) 작업을 취소한다.boolean cancel(boolean mayInterruptIfRunning): 아직 완료되지 않은 작업을 취소한다. mayInterruptIfRunning이 true 또는 false 일 경우, can..

  • format_list_bulleted Java & Kotlin
  • · 2025. 6. 19.
  • textsms
[Java] Future, Callable의 활용

[Java] Future, Callable의 활용

비동기 프로그래밍, 멀티스레드에 활용되는 Future, Callable에 대해 알아보고자 한다. 이는 기존 스레드 모델의 근본적인 한계를 해결하기 위해 등장하였다.Runnable의 불편함public interface Runnable { void run();}반환 값이 없다: run() 메서드는 반환 값을 가지지 않는다. 즉, 스레드의 실행 결과를 직접 받을 수 없다.예외 처리: run() 메서드는 체크 예외를 던질 수 없다. 체크 예외의 처리는 메서드 내부 에서 처리해야 한다.Runnable이란?더보기Runnable은 별도의 스레드에서 수행할 작업의 로직을 정의하는 인터페이스이다. 스레드가 실행할 코드 블록을 캡슐화한다고 보면 된다.// 스레드에서 실행할 작업을 정의Runnable task = ne..

  • format_list_bulleted Java & Kotlin
  • · 2025. 6. 3.
  • textsms
[Java] Executor Thread Pool 관리

[Java] Executor Thread Pool 관리

간단하게 ThreadPoolExecutor에 대해 설명하자면, ThreadPoolExecutor는 싱글스레드 환경을 멀티스레드 환경으로 전환하여 활용할 수 있는 프레임워크이다. ThreadPoolExecutor는 Java의 동시성 프레임워크인 java.util.concurrent 패키지의 핵심 클래스로 스레드 풀을 생성하고 관리하여 애플리케이션의 성능과 자원 활용을 최적화한다. 일반적으로 ThreadPoolExecutor의 생성자를 만들 때 아래와 같은 속성들을 볼 수 있다.import java.util.concurrent.*;public class ThreadPoolExecutorExample { public static void main(String[] args) { // 스레드 풀..

  • format_list_bulleted Java & Kotlin
  • · 2025. 5. 21.
  • textsms
  • navigate_before
  • 1
  • navigate_next
전체 카테고리
  • 분류 전체보기 (18)
    • 공지사항 (1)
    • Java & Kotlin (4)
    • Spring (7)
    • Server (0)
    • Database (2)
    • Network (1)
    • 공부방 (3)
최근 글
최근 댓글
태그
전체 방문자
오늘
어제
전체
Copyright © 쭈미로운 생활 All rights reserved.
Designed by JJuum

티스토리툴바