4

lock-free 평범한 데이터 유형의 구현 (소스 코드를 의미)에 대한 좋은 자료를 알고 있습니까? 목록, 큐 등을 생각하고 있습니까?Lockfree 표준 콜렉션 및 튜토리얼 또는 기사

잠금 구현은 매우 쉽게 찾을 수 있지만 잠금없는 알고리즘의 예와 CAS 작업을 정확하게 수행하는 방법과이를 사용하여 이러한 구조를 구현하는 방법을 찾을 수 없습니다.

+0

특히 어떤 언어입니까? –

+0

아니지만 실제로 태그를 추가했습니다 ... –

답변

2

경우, 큐,리스트, 스택의 잠금없는 구현 (구체적으로) 설명 당신과 함께 boost::lockfree을보세요. Lock-free Queue, Stack, Ringbuffer 구현을 가지고 있습니다.

boost::lockfree::details 섹션에는 잠금없는 프리리스트 및 태그가 추가 된 포인터 (ABA 예방) 구현이 있습니다. boost::atomic (개발 중 버전의 C++ 0x std::atomic)을 통해 명시적인 메모리 순서 지정 예제를 볼 수도 있습니다.

모두 boost::lockfreeboost::atomic 아직 boost의 일부가 아니지만 모두 부스트 개발 메일 링리스트에서 관심을 보이고 검토를 위해 일정에 있습니다했다.

+0

boost :: lockfree에 대한 링크가 손상되었습니다. – user1937198

관련 문제