Stack vs Deque1 [Java] Stack vs Deque 공식 문서는 이렇게 말하고 있다. 더욱 완전하고 일관된 LIFO Stack 작업은 Deque 인터페이스 및 해당 구현을 사용하여 구현하는 것이다. 즉, Stack 대신 Deque의 구현체인 ArrayDeque 사용을 제안하고 있다. Java에서 Vector는 특정 상황에서 효율적이지 않기 때문에 Thread Safe 않다고 할 수 있다. 그렇기 때문에 Vector를 상속 받은 Stack은 다음과 같은 단점이 존재한다. 초기 용량 설정을 지원하지 않는다. 모든 작업에 Lock이 사용된다. 단일 스레드 실행 성능이 저하될 수 있다. 단순한 Iterator의 탐색 작업에서도 get() 메서드 실행시 매번 Lock이 발생하게 되므로 오버헤드가 커진다. Stack은 Vector를 상속 받았기 때문에 다중 상속을 .. 2022. 7. 25. 이전 1 다음