Thread-safety in C++
엔지니어링데이 2025 네이버 · YouTube
AI 핵심 요약
C++ 멀티스레드 코드에서 동기화 도구를 사용해도 데이터 레이스가 남을 수 있는 문제를 다루며, 데이터 레이스의 조건과 sequenced-before·synchronizes-with·happens-before 관계를 설명한다. 이어 사용자 정의 타입에 기본 스레드 안전성을 적용하는 방법과 `std::shared_ptr` 및 표준 라이브러리 타입의 안전성 범위를 살펴본다. 외부 동기화에서는 뮤텍스의 잠금·해제나 원자 변수의 릴리즈·어콰이어로 호출 간 순서를 보장하고, 내부 동기화 타입은 뮤텍스·원자 변수 같은 프리미티브를 조합해 구현할 수 있음을 보인다. 핵심은 도구의 이름보다 필요한 happens-before 관계가 실제로 성립하는지 확인하는 것이다.
- 데이터 레이스는 같은 메모리 위치에 동기화 없이 접근해 하나 이상이 쓰기일 때 발생하며, C++에서는 미정의 동작이다.
- 같은 스레드의 sequenced-before와 스레드 간 synchronizes-with를 연결해 happens-before 관계를 만든다.
- 사용자 정의 타입도 기본 스레드 안전성을 갖추면 표준 라이브러리와 템플릿에서 더 안전하게 조합할 수 있다.
- 릴리즈·어콰이어 원자 연산은 별도의 비원자 데이터도 안전하게 전달하는 동기화 기준점이 될 수 있다.
- 내부 동기화 타입은 뮤텍스나 원자 변수 같은 동기화 프리미티브를 바탕으로 구성한다.
소개
- 네이버 사내 기술 교류 행사인 NAVER ENGINEERING DAY 2025(5월)에서 발표되었던 세션을 공개합니다. [발표 내용] C++ 에서 thread safe 한 프로그램을 만들기 위해 알아야 할 기본 개념인 data race 와 basic thread safety, 연산 간 순서 관계에 대해 설명합니다. [목차] * Data race - Data race - 연산 간의 선후 관계(Sequenced-before) - 연산 간의 선후 관계(Synchronizes-with) - 연산 간의 선후 관계(happens-before) * Basic thread safety - Basic thread safety - Standard library 의 thread safety - std::shared_ptr T 의 basic thread safety - Basic thread safety 보장하지 않는 타입의 예 - Basic thr...
비슷한 학습 자료
컨퍼런스 if kakao
Swift Concurrency Essentials / if(kakaoAI)2024
컨퍼런스 if kakao
Swift 6부터 본격적으로 지원되는 Swift Concurrency에 대한 전반적인 개념을 소개합니다. 동시성 환경에서 안전한 코드를 만들기 위한 Concurrency의 주요 개념들에 대해 다루며, 이들을 다룰 때 주의할 점과 카카오톡에서는 어떻게 이용하고 있는지를 알아봅니다. #Swift #Concurrency #iOS #KakaoTalk 톡iOS에서 톡캘린더 개발을 담당하여, 더 나은 서비스를 만들기 위해 노력하는 Hayden입니다. 발표자료 보기 👉 https://speakerdeck.com/kakao/ifkakao24-48 if(kakaoAI)2024에 대한 자세한 정보는 👉 https://if.kakao.com #카카오 #이프카카오 #개발자컨퍼런스 #AI #기술 #개발 #ifkakaoAI2024
프로그래밍 언어
컨퍼런스 if kakao
JDK 21의 신기능 Virtual Thread 알아보기 (안정수 James)
컨퍼런스 if kakao
[2023.12.12. 제4회 Kakao Tech Meet 발표] JDK 21(LTS)에서 소개된 새로운 기능 중 주목받고 있는 Virtual Thread에 대해서 소개합니다. Virtual Thread가 탄생한 배경과 목적, 구조, 사용법, 주의사항에 대해서도 알아봅니다. #kakaotechmeet #카카오테크 #java #Kotlin #jdk21 #virtualthread 발표자: 안정수(James) 카카오에서 AI 플랫폼을 만드는 플랫폼 엔지니어링 업무를 맡고 있습니다. 새로운 것을 배우고 공부하는 일을 좋아합니다. 하루하루 조금 느리더라도 저만의 속도로 눈앞에 구덩이를 메우고 있습니다. 🔥발표자 블로그: https://findstar.pe.kr/ 💬 발표자 인터뷰와 비하인드 보러가기: https://tech.kakao.com/2023/12/22/techmeet-virtualthread/ ✨ 카카오테크 톡채널: http://pf.kakao.com/_qmkxcs ✨ 카...
프로그래밍 언어
컨퍼런스 엔지니어링데이 2025
데이터는 흐른다, 연결될 준비가 되었다면
컨퍼런스 엔지니어링데이 2025
네이버 사내 기술 교류 행사인 NAVER ENGINEERING DAY 2025(5월)에서 발표되었던 세션을 공개합니다. [발표 내용] 유저 세그먼트를 손쉽게 정의하고, 이를 다양한 액션 채널(Braze, IDS, GAM 등)과 자동 연동할 수 있는 네이버 웹툰의 Cohort System을 소개합니다. 조건 기반 필터링, ML 모델 연동 등 다양한 방식으로 세그먼트를 만들고, 중복 제거 로직과 함께 효율적으로 활용할 수 있습니다. 시스템 구조와 기술 스택, 실제 마케팅 활용 사례까지 함께 공유하며, 데이터에서 인사이트, 나아가 액션까지의 연결을 어떻게 자동화했는지를 설명합니다. [강의 대상] * 데이터 엔지니어 / 백엔드 엔지니어: 데이터 흐름 자동화, 시스템 구조에 관심 있는 분 * ML 엔지니어 / 데이터 사이언티스트: ML 결과를 실시간 타겟팅에 적용하고 싶은 분 * 마케터 / PM: 타겟 유저 추출과 액션 전환까지의 전체 흐름을 이해하고 싶은 분 [목차] Episode 1...
백엔드 데이터베이스
컨퍼런스 SpringCamp 2025
스프링캠프 2025 [Track 1] 5. Talk 3 - 기술 Talk (이동욱, 안영회, 조영호)
컨퍼런스 SpringCamp 2025
🎙️ MC 이동욱 (인프랩) 🎙️ 패널 안영회 (베터코드) 🎙️ 패널 조영호 🗓️ 스프링캠프 2025 Track 1 - 5 (2025년 06월 28일) 🧭 스페이스쉐어 삼성 📂 발표자료 : 발표 자료가 제공되지 않는 세션입니다. [🔗 스프링캠프 & KSUG] 스프링캠프 2025 웹 https://springcamp.ksug.org/2025/ 스프링캠프 페이스북 https://www.facebook.com/springcampkr/ 스프링캠프 유튜브 https://www.youtube.com/@springcampkr KSUG 웹 https://www.ksug.org/ KSUG 구글 그룹 https://groups.google.com/g/ksug KSUG 페이스북 https://www.facebook.com/groups/springkorea KSUG 유튜브 https://www.youtube.com/@workerksug7409 #KSUG #스프링캠...
컨퍼런스 SpringCamp 2025
스프링캠프 2025 [Track 2] 4. Virtual Thread 어디까지 보고 오셨어요? (박성훈, 정승주)
컨퍼런스 SpringCamp 2025
🎙️ 박성훈 🎙️ 정승주 🗓️ 스프링캠프 2025 Track 2 - 4 (2025년 06월 28일) 🧭 스페이스쉐어 삼성 📂 발표자료 : https://github.com/springcamp/presentations/tree/main/SpringCamp-2025-Presentations [🔗 스프링캠프 & KSUG] 스프링캠프 2025 웹 https://springcamp.ksug.org/2025/ 스프링캠프 페이스북 https://www.facebook.com/springcampkr/ 스프링캠프 유튜브 https://www.youtube.com/@springcampkr KSUG 웹 https://www.ksug.org/ KSUG 구글 그룹 https://groups.google.com/g/ksug KSUG 페이스북 https://www.facebook.com/groups/springkorea KSUG 유튜브 https://www.youtube.com/@...
백엔드 프로그래밍 언어
컨퍼런스 SpringCamp 2025
스프링캠프 2025 [Track 2] 6. 레일웨이 지향 프로그래밍과 스프링 (이선협)
컨퍼런스 SpringCamp 2025
🎙️ 이선협 (마플코퍼레이션) 🗓️ 스프링캠프 2025 Track 2 - 6 (2025년 06월 28일) 🧭 스페이스쉐어 삼성 📂 발표자료 : https://github.com/springcamp/presentations/tree/main/SpringCamp-2025-Presentations [🔗 스프링캠프 & KSUG] 스프링캠프 2025 웹 https://springcamp.ksug.org/2025/ 스프링캠프 페이스북 https://www.facebook.com/springcampkr/ 스프링캠프 유튜브 https://www.youtube.com/@springcampkr KSUG 웹 https://www.ksug.org/ KSUG 구글 그룹 https://groups.google.com/g/ksug KSUG 페이스북 https://www.facebook.com/groups/springkorea KSUG 유튜브 https://www.youtube.com...
백엔드