Tags
#algorithm
(1)
total 1
2023-01-16
[0, 1, 4, 8, 9]와 같은 정렬된 구조에서 특정 값의 위치를 찾는 문제를 풀어봅시다. array[i]와 같이 접근하는 연산 subscript 연산의 비용이 C라고 하고, 배열의 길이가 N이라고 합시다 나이브하게 보면, 앞부터 순서대로 찾으면 총 CN의 비용이 발생합니다. 이를 순차 탐색이라고도 표현합니다. 다음 아이디어를 더해봅시다. 우리가 만약 1을 본다면, 정렬되어있음을 알고 있기...
#java
(3)
total 3
2023-01-16
이전 포스팅에서는 자바의 Garbage Collection에 대해 다뤘습니다. 이번 포스팅에서는 Garbage Collection을 수행하는 Garbage Collector를 애플리케이션에 맞게 튜닝하는 방법에 대해 알아봅시다. Garbage Collector와 Garbage Collection는 이니셜이 같아 둘 모두 GC라고 부릅니다. Garbage Collectors * 이 포스팅에서 다루는 java의 버전은 18입니다. Serial GC -XX:+UseSerialGC Parallel GC -XX:+UseSerialGC ~Concurrent Mark Sweep(CMS) GC~(Removed) Garbage-First(G1)...
2023-01-16
이전 포스팅에서 Garbage Collection에 대한 전략 세가지를 다뤘습니다. 이번 포스팅에서는 추적 전략을 사용하는 java의 Garbage Collector에 대해 다룹니다. Java GC(Garbage Collector) * 이 포스팅에서 다루는 java의 버전은 18입니다. graph TD T[Thread] --a--> A(객체1) T[Thread] --b--> B(객체2) A(객체1) --> C(멤버) T[Thread] -.- D(Garbage) 이전 포스팅에서 모든 스레드에서 변수 혹은 그 변수의...
2023-01-16
우리는 프로그래밍을 하면서 다양한 한정적인 자원을 다룹니다. 네트워크 소켓이나, 메모리와 같이 사용한 후 돌려줘야할 것들이죠. 그 중에서, 메모리에 대한 이야기를 하려고 합니다. 다음 java 코드를 읽어봅시다. var a = new Integer(10); var b = a; System.out.println(a); a = null; // 아직 객체는 참조되는중 b = null; // 더 이상 해당...