인프런 커뮤니티 질문&답변
Push에서 exchange 사용 이유
작성
·
314
0
140번줄에 있는 _tail.exchange(dummy); 부분에서
exchange를 사용하는 이유가 궁금합니다.
해당 부분에서 필요한 기능은 store만 해도 될 것 같다는 생각이 듭니다. 그래서 139번줄에 있는 store로 바꿔서 테스트 해봐도 일단은 문제가 없었는데요.
혹시 제가 놓치는 다른 이유가 있는 건가요?
퀴즈
66%나 틀려요. 한번 도전해보세요!
멀티쓰레딩 환경에서 여러 쓰레드가 동시에 공유 데이터에 접근하여 값을 수정할 때 발생할 수 있는 예상치 못한 결과의 주요 원인은 무엇일까요?
데드락
쓰레드 지역 저장소(TLS) 충돌
경쟁 상태(Race Condition)
CPU 파이프라인 실패
답변 1
0
저도 이거 궁금해했어서 정말 며칠 많이 고민하고 똑같이 질문했었습니다.
https://www.inflearn.com/questions/412694
스트럭쳐가 묶음 형태의 데이터 라는걸 다시 상기하게 됐었네여.
아차, 해당 부분 store로 처리하면 메모리 누수 났었습니다. 여러쓰레드, 푸쉬랑 팝으로 2분정도 해보시면 그러더라고영.






ㅎㅎㅎ 답변 감사합니다!