Recent posts

[C++] barrier

less than 1 minute read

개요 알려진 크기의 스레드 그룹이 barrier에 도달할때까지 차단하는 스레드 조정 메커니즘 제공 소멸자를 제외한 멤버 함수를 동시 호출해도 데이터 경합 없음 latch와의 차이점 재사용 가능 스레드 그룹이 차단 해...

[C++] latch

less than 1 minute read

개요 스레드를 동기화 하는데 사용하는 하향 카운터 카운터 값은 생성 시 초기화 카운터가 0으로 감소할 때까지 차단 barrier와 달리 재사용 불가 소멸자를 제외한 멤버 함수를 동시 호출해도 데이터 경합 없음 멤버 함수 count_down...

[C++] counting_semaphore/binary_semaphore

1 minute read

개요 공유 리소스에 대한 접근을 제어하는 경량화 된 동기화 클래스 binary_semaphore는 크기가 1인 counting_semaphore 상호 배제보다 신호/알림에 자주 사용 condition_variable의 대안이면 종종 더 나은 성능 제...

[C++] ranges

1 minute read

개요 reference 알고리즘 및 반복자 라이브러리에 대한 확장 및 일반화 구성 및 안정화 auto 혹은 ranged for와 같은 효과 | 연산자 오버로딩이 되어 있어 간결하고 직관적인 코드 작성 가능 정통적인 함수 호출 방식도...

[C++] three-way comparison

1 minute read

개요 3방향 비교 연산자 우주선 연산자(spaceship operator)라는 별명이 붙음 ‘x <=> y’가 0보다 작으면 ‘x < y’, 크면 ‘x > y’, 같거나 동등하면 ‘x == y’ 동등 가로가 2, 세로가 3인...