Programming Language/Java
-
[Java] Virtual Thread에 대해서Programming Language/Java 2024. 1. 10. 12:22
2023년 9월 19일에 릴리즈된 Java 21 는 Java 8 이후 세번째 LTS 버전이다(11, 17, 21). 이 버전에서는 많은 사람들이 기다리고 있는 가상 스레드 라는 기능이 추가되었다. Virtual Thread가상스레드란 전통적인 Java 스레드에 더하여 새롭게 추가되는 경량 스레드이다. 경량 스레드 모델이란 기존 언어의 스레드 모델보다 더 작은 단위로 실행 단위를 나눠 컨텍스트 스위칭 비용과 Blocking 타임을 낮추는 개념이다. Project Loom의 결과물로 추가된 기능으로 OS 스레드를 그대로 사용하지 않고 JVM 자체적으로 내부 스케줄링을 통해서 사용할 수 있는 경량의 스레드를 제공한다. Project Loom이란? 경량 스레드를 Java에 추가하기 위해서 가상 스레드를 비롯한..
-
[Java] Record Class란?Programming Language/Java 2023. 12. 20. 03:21
Record란 데이터 클래스로 Java 14에 추가되어 Java 16에 정식으로 포함되었다. Record 클래스를 사용하기 이전에는 변경 불가능한 단순 데이터 클래스를 표현하고자 할 때 불편함이 있었다. 불변 데이터 객체 User가 있다고 해보자. public class User{ private final String name; private final String gender; public Person(String name, String gender) { this.name = name; this.gender= gender; } @Override public int hashCode() { return Objects.hash(name, gender); } @Override public boolean equ..