TIL

Chapter 12 동시 성능 기법

12.1 병렬성이란

12.1.1 자바 동시성 기초

12.2 JMM의 이해

강한 메모리 모델과 약한 메모리 모델

JMM 기본 개념

synchronized 락의 한계

12.3 동시성 라이브러리 구축

12.3.1 Unsafe

12.3.2 아토믹스와 CAS

12.3.3 락과 스핀락

12.4 동시 라이브러리 정리

12.4.1 java.until.concurrent 락

12.4.2 읽기/쓰기 락

12.4.3 세마포어

12.4.4 동시 컬렉션

12.4.5 래치와 배리어

12.5 실행자와 태스크 추상화

12.5.1 비동기 실행이란?

Callable

자바 스레드는 OS 수준 프로세스와 동등하며 생성 비용이 비싼 경우도 있다. Runnable에서 결과를 가져오는 방식은 다른 스레드를 상대로 실행 반환을 조정해야 하기에 복잡도가 가증될 수 있다.

ExecutorService

12.5.2 ExecutorService 선택하기

12.5.3 포크/조인

12.6 최신 자바 동시성

12.6.1 스트림과 병렬 스트림

12.6.2 락-프리 기법

12.6.3 액터 기반 기법