Skip to content

사전과제#3

Open
rmsxo200 wants to merge 1 commit intohanghae-skillup:mainfrom
rmsxo200:week0
Open

사전과제#3
rmsxo200 wants to merge 1 commit intohanghae-skillup:mainfrom
rmsxo200:week0

Conversation

@rmsxo200
Copy link

@rmsxo200 rmsxo200 commented Jan 2, 2025

사전과제

[사전과제] 멀티스레드 환경 공유자원 동시성 문제 해결


작업 내용

productDatabase 데이터 타입을 ConcurrentHashMap로 변경
mapget(), put() 대신 compute() 메서드 사용


발생했던 문제와 해결 과정을 남겨 주세요.

공유 자원인 productDatabaseConcurrentHashMap를 사용하여 동시성 문제를 해결 하였습니다.
주문 처리 시 compute() 메서드를 사용하여 원자적 연산이 이루어지도록 하였습니다.


이번 주차에서 고민되었던 지점이나, 어려웠던 점을 알려 주세요.

멀티스레드 환경을 경험해본 적이 없어 시작할 때 가장 어려웠던 것 같습니다.
참고자료에서 최신 주문의 경우 ThreadLocal을 사용하여 처리하는 예시가 스레드를 1명의 유저로 보는 것인지 해당 부분은 이해가 되지 않아 제외하고 진행 하였습니다.


리뷰 포인트

모든 예제가 코틀린 코드를 중심으로 풀이되는 것 같습니다.
개인적으로 코틀린에 대한 지식이 없는데 앞으로 모든 예시들도 코틀린 기준으로 나오는 건지 진행 방향이 궁금합니다.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant