목록쓰레드프로그래밍 (2)
고양이 여름이의 지식채널

자바 쓰레드 프로그래밍으로 쓰레드 로컬(ThreadLocal), ConcurrentHashMap 그리고 CompletableFuture 에 대해서 알아봅니다. 쓰레드 로컬 (ThreadLocal) 쓰레드 로컬은 쓰레드 간에 데이터를 공유할 수 있도록 돕는 자바의 클래스입니다. 이를 사용하면, 하나의 쓰레드에서 생성한 데이터를 다른 쓰레드에서도 사용할 수 있게 됩니다. 이를 통해 쓰레드 간 데이터 공유를 보다 안전하게 처리할 수 있습니다. public class ThreadLocalExample { // ThreadLocal 객체 생성 public static final ThreadLocal THREAD_LOCAL = new ThreadLocal(); public static void main(String..

자바 쓰레드 프로그래밍으로 쓰레드풀과 데드락에 대해서 알아봅니다. 쓰레드 풀(Thread Pool) 쓰레드 풀은 쓰레드를 효율적으로 사용하기 위한 방법입니다. 여러 개의 쓰레드를 미리 만들어 놓고, 작업이 필요할 때마다 쓰레드를 할당하여 작업을 수행합니다. 이를 통해 쓰레드를 반복적으로 생성하고 제거하는 오버헤드를 줄일 수 있습니다. public class ThreadPool { private final BlockingQueue taskQueue; // 작업 큐 private final List threads; // 쓰레드 리스트 public ThreadPool(int numThreads) { taskQueue = new LinkedBlockingQueue(); // 작업 큐 초기화 threads = n..