thread2 java #2 [HashMap, ConcurrentHashMap] 쓰레드에 더 유용하게 사용하는 자료구조 Dao 객체를 만들어서 사용하는게 더 나은 방법이 될 수도 있겠지만 자료구조를 잘 활용하는 것이 때로는 더 적은 리소스로 더 나은 성능을 만들수 있다고 믿습니다. 그중에서도 HashMap과 ConcurrentHashMap은 이름이 비슷하지만 사용시에 확연히 다른 모습을 보여줍니다. HashMap의 특징을 먼저 보겠습니다. null을 key 값으로 허용합니다. 중복을 허용하지 않습니다. 순서나 동기화를 보장하지 않습니다. ConcurrentHashMap의 특징을 보겠습니다. null을 허용하지 않습니다. 중복을 허용하지 않습니다. 순서는 보장하지 않지만 동기성은 보장합니다. 위와 같이 보았을때 스레드 상에서 ConcurrentHashMap을 사용하면 더 좋은 효과를 .. 2020. 6. 26. java #1 [concat, +, StringBuffer, StringBuilder] String과 String 자체를 이어붙일때에는 사실 두개의 String중 하나의 길이가 늘어나는 것이 아니라 새로운 String이 메모리 영역에 생성이 됩니다. 이로인해서 String을 가지고 작업할 때 조심해야합니다. 퍼포먼스 상에서 가장 빠른건 +와 , StringBuilder입니다. (java 1.5버전 부턴 +와 StringBuilder가 동일) 사실 java 1.5이전의 버전을 사용하시는 분이면 + 사용을 비추하는 이유는 +와 concat이 동일하게 동작하기 때문입니다. 사실 String을 재 조합할때에 java는 새로운 인스턴스를 만들어 우리에게 재공합니다. (concat의 경우) 그러기에 메모리 소비를 가장 많이 줄이려면 StringBuffer나 StringBuilder를 사용해야 하는데 .. 2020. 6. 23. 이전 1 다음