inflearn logo
강의

Khóa học

Chia sẻ kiến thức

Nền tảng vững chắc! Bắt đầu Java một cách quyết liệt Phần 3 (Thượng): Đa luồng và đồng bộ hóa

So sánh hiệu năng của LinkedList và Vector

44강, 45강을 듣고 궁금한 점이 있어 질문드립니다.

Đã giải quyết

85

brong

13 câu hỏi đã được viết

0

안녕하세요:)
강의를 듣고 궁금한 점이 있어 질문드립니다.

 

44강과 45강에서 List에 대해 설명해 주시면서 일반적인 상황에서는 ArrayList나 LinkedList를, 동시성 문제가 고려되어야 하는 상황에서는 Vector를 사용하라고 말씀해 주셨습니다.

 

그런데 Vector는 JDK 1.x 시절에 도입된 레거시 클래스로 모든 public 메서드에 synchronized 키워드가 적용되어 있어 성능 저하와 불필요한 락 경쟁, 캐시 무효화 등의 문제가 발생할 수 있는 것으로 알고 있습니다.

 

그래서 현재는 java.util.concurrent 패키지에서 제공하는 동시성 컬렉션이나, Collections.synchronizedList, CopyOnWriteArrayList와 같은 대안들을 상황에 맞게 사용하는 것이 더 적절하다고 알고 있습니다.

 

이러한 이유로 단순히 동시성 문제를 고려해야 하는 상황에서 Vector를 권장한다라는 접근은 현재 시점에서 어울리지 않는다고 생각됩니다.

 

그럼에도 강의에서 Vector를 언급하신 특별한 의도나 배경이 있으셨는지 궁금하여 질문드립니다 :)

java jvm lock-free generic multithread

Câu trả lời 1

1

nullnull8537

지적하신 내용이 맞습니다. 특별한 의도가 있다기 보다는 제가 더 면밀히 살피지 않아서 생긴 오류라 하는 것이 더 타당하겠습니다. 관련 내용을 다시 살피고 검토해 강의를 수정하는 것으로 정리해 공지하겠습니다. 다만 관련 내용을 다시 검토하고 수정하는 것은 시간이 좀 걸릴 것 같습니다. 어쨌든 조속히 대응하겠습니다. 좋은 지적 감사드립니다.

그리고 감사의 뜻으로 제가 강의 중 하나를 무료로 들으실 수 있도록 해드리겠습니다. 원하시는 강의를 선택하셔서 cx8537@naver.com으로 알려주시기 바랍니다. 고맙습니다. 😄

중급 1편 학습 방향에 대해 조언 부탁드립니다

0

12

1

To-Do App

0

11

0

강의노트 접속 불가

0

8

1

Kafka Cluster 구성도 질문

0

8

1

26년 1회차 기출 강의

0

32

2

기출문제

0

49

1

정보처리기사 실기 zip

0

41

2

답을언제쯤받아볼수있나요

0

47

2

데이터베이스 노션

0

36

2

형 책 어떻게 받아?

1

52

1

PPT 자료 공유 받을 수 있을까요?

0

29

1

@JsonIgnore 이후 Internal Server Error가 발생하지 않습니다.

0

30

2

수업노선자료파일 다운

0

34

2

5~9까지 램덤숫자출력

0

27

1

프로젝트가 없어요..

0

55

2

C언어에서

0

50

1

포인터 질문

0

53

2

메소드에 대한 lockFlag 작동 방식 문의드립니다.

0

43

2

cpu 코어와 쓰레드 개수

0

245

2

JVM 메모리와 CPU 1,2차 캐시

0

74

2

36강 SpinLock 부분 질문

0

87

1

커널객체와 jvm 객체 차이 질문.

0

99

1

JVM 스레드 TLS 질문

0

113

1

몇가지 질문드립니다

0

147

2