java 21

전통적인 자바 스레드 서버 애플리케이션에서 동시성 처리를 위해 스레드를 사용하는 것은 오랜 전통이었습니다. 예를 들어 스프링 프레임워크는 여러 요청을 처리하기 위해 멀티 스레드 모델을 채택한 프레임 워크입니다. 보통은 각 요청을 처리하는 데 하나의 스레드를 할당하는 방식으로 작동됩니다. 그러나 이 방식은 요청이 많아질수록 문제가 발생하게 됩니다.  과거에는 운영 체제 스레드의 제약으로 인해 동시 요청에 대응하기 위해 스레드 수를 늘리는 것이 어려웠습니다. 이는 스레드가 비용이 높고, 시스템에 사용 가능한 스레드 수가 제한되기 때문이죠. 또한 자바의 스레드는 운영 체제 스레드의 Wrapper로 동작하기 때문에 I/O 작업을 만나면 블로킹되어 다른 작업을 수행할 수 없는 경우가 발생합니다. 예를 들어 스프링..
스위치문과 null (switches and null) 전통적으로, switch 문과 표현식은 선택기 표현식이 null을 검증할 때, NullPointerException을 throw 합니다. 따라서 null을 테스트하기 위해 switch 바깥에서 테스트해야 했습니다. // Prior to Java 21 static void testFooBarOld(String s) { if (s == null) { System.out.println("Oops!"); return; } switch (s) { case "Foo", "Bar" -> System.out.println("Great"); default -> System.out.println("Ok"); } } java 21부터는 선택기 표현식의 값이 null일 ..
행복한쿼콰
'java 21' 태그의 글 목록