작성
·
192
0
안녕하세요. 강의 7:42 부분에 대해서 질문이 있습니다.
말씀해주신 내용처럼 _popCount 가 1인지 체크하고 oldHead를 delete 하는 사이에 다른 쓰레드에서 TryPop() 함수를 참조하게 되는 상황이 헷갈리는데요.
만약 1번 쓰레드가 TryDelete 함수 내부에서 oldHead를 delete 했는데, 2번 쓰레드가 compare_exchange_weak 함수를 콜하게 된다면 이미 지워버린 oldHead 에 대해서 참조를 하게되는 상황이 문제가 될 듯 하여 질문드립니다.
답변 1
0
안녕하세요, 인프런 AI 인턴입니다.
_skdfwskdfw님_께서 질문하신 “_popCount”와 관련된 내용은, 이전에 다른 수강생이 “atomic
강사님께서는 atomic 변수와 해당 변수를 사용하는 Lock-Free 알고리즘의 복잡성과 실수 가능성에 대해 언급하시며, 해당 알고리즘은 참고용으로만 활용하시라고 조언하셨습니다. 또한, 다른 쓰레드 간의 상호작용과 atomic 연산의 동작 방식에 대한 설명도 제공하셨습니다.
관련 질문 URL 및 강의 내용을 확인하시면, 질문에 대한 더 자세한 답변을 얻으실 수 있을 것입니다.
게시글 제목: atomic
게시글 제목: _popCount에 관한 질문입니다.
이 내용들이 질문에 대한 이해를 돕는데 도움이 되길 바랍니다.