본문 바로가기
반응형

java18

[JAVA] Thread Dump 만들기 Java Thread Dump 애플리케이션이 갑자기 먹통이 되거나, 속도가 느려질 때 Java Thread Dump 확인하기. 프로세스 pid를 찾은 후 pid로 확인이 가능 $ ps -ef | grep tomcat $ jstack PID "main" #1 prio=5 os_prio=0 tid=0x00007f27f400f000 nid=0x9 runnable [0x00007f27fd741000] java.lang.Thread.State: RUNNABLE at java.net.PlainSocketImpl.socketAccept(Native Method) at java.net.AbstractPlainSocketImpl.accept(AbstractPlainSocketImpl.java:409) at java.ne.. 2020. 8. 20.
[알고리즘] 퀵정렬 퀵 정렬(Quicksort)은 C. A. R. 호어가 개발한 정렬 알고리즘이다. 다른 원소와의 비교만으로 정렬을 수행하는 비교 정렬에 속한다. 퀵 정렬은 n개의 데이터를 정렬할 때, 최악의 경우에는 O(n2)번의 비교를 수행하고, 평균적으로 O(n log n)번의 비교를 수행한다. 퀵 정렬의 내부 루프는 대부분의 컴퓨터 아키텍처에서 효율적으로 작동하도록 설계되어 있고(그 이유는 메모리 참조가 지역화되어 있기 때문에 CPU 캐시의 히트율이 높아지기 때문이다.), 대부분의 실질적인 데이터를 정렬할 때 제곱 시간이 걸릴 확률이 거의 없도록 알고리즘을 설계하는 것이 가능하다. 때문에 일반적인 경우 퀵 정렬은 다른 O(n log n) 알고리즘에 비해 훨씬 빠르게 동작한다. 그리고 퀵 정렬은 정렬을 위해 O(log.. 2014. 4. 2.
[알고리즘] 링크리스트 삭제 추가가 용의한 Linked 리스트. * 링크드 리스트. package com.nakanara.list; public class List { private Item headList = new Item(0); // 시작 점. private Item LastLint = headList; // 마지막 입력 점. private int size = 0; // 전체 사이즈. /** * 정보 추가. * @param val */ public void add(int val) { Item item2 = new Item(val); LastLint.add(item2); LastLint = item2; ++size; } /** * 특정 Item 뒤에 추가. * @param i * @param val */ public voi.. 2014. 3. 24.
[알고리즘] Stack FILO(First In Last Out) 구조인 스택 구현. package com.nakanara.stack; /** * Stack. * @author nakanara * */ public class Stack { private static final int MAX_SIZE = 5; // 스택 크기 private int data[] = new int[Stack.MAX_SIZE]; // 자료 저장 private int position = 0; // 스택 위치 /** * 데이터 입력. * @param val * @throws Exception */ public void push(int val) throws Exception { if(position == (Stack.MAX_SIZE-1)) { throw n.. 2014. 3. 24.
반응형