본문 바로가기

추천 검색어

실시간 인기 검색어

러스트 동시성 프로그래밍: Atomic과 Lock으로 안전하고 효율적인 동시성 코드 작성하기

마라 보스 지음 | 윤인도 옮김
한빛미디어

2024년 02월 05일 출간

종이책 : 2024년 01월 29일 출간

(개의 리뷰)
( 0% 의 구매자)
eBook 상품 정보
파일 정보 pdf (2.90MB)
ISBN 9791169217811
듣기(TTS) 가능
TTS 란?
텍스트를 음성으로 읽어주는 기술입니다.
  • 전자책의 편집 상태에 따라 본문의 흐름과 다르게 텍스트를​ 읽을 수 있습니다.
  • 전자책 화면에 표기된 주석 등을 모두 읽어 줍니다.
  • 이미지 형태로 제작된 전자책 (예 : ZIP 파일)은 TTS 기능을 지원하지 않습니다.
  • '교보 ebook' 앱을 최신 버전으로 설치해야 이용 가능합니다. (Android v3.0.26, iOS v3.0.09,PC v1.2 버전 이상)
소득공제
소장
정가 : 20,800원

쿠폰적용가 18,720

10% 할인 | 5%P 적립

이 상품은 배송되지 않는 디지털 상품이며,
교보eBook앱이나 웹뷰어에서 바로 이용가능합니다.

카드&결제 혜택

  • 5만원 이상 구매 시 추가 2,000P
  • 3만원 이상 구매 시, 등급별 2~4% 추가 최대 416P
  • 리뷰 작성 시, e교환권 추가 최대 300원

작품소개

이 상품이 속한 분야

러스트는 안전성, 우수한 성능, 간결한 문법, 비동기 프로그래밍 지원 등 현대적인 프로그래밍 환경에 최적화된 언어로 꼽힙니다. 비록 러스트가 학습하기 어려운 언어이지만, 여러 해 동안 개발자들로부터 큰 주목을 받고 있는 이유이기도 합니다. 더불어 마이크로소프트, 구글, 아마존 같은 글로벌 IT 기업들에서 러스트를 적극적으로 활용하고 있습니다. 현재 인프라 환경은 멀티 코어 프로세서의 보편화로 동시성과 병렬성이 중요해지면서 그 중요도는 지금보다 더 높아질 것이고, 러스트는 미래의 언어가 될 것입니다.
이 책은 러스트의 안전성과 빠른 속도라는 강점을 최대한 활용하는 방법을 소개합니다. 특히 러스트의 메모리 모델을 중점으로 다루며, Arc나 Mutex와 같은 동시성 도구가 어떻게 동작하는지를 다양한 예제 코드와 함께 자세히 설명합니다. 이를 통해 독자는 고수준의 실무 경험을 쌓을 수 있으며, 러스트를 활용한 효과적인 동시성 프로그래밍에 대한 이해를 한층 더 향상시킬 수 있습니다. 러스트를 처음 배우려는 개발자뿐만 아니라, 다른 언어에서 동시성 코드를 개발하려는 개발자에게도 유용한 핵심 가이드가 되어줄 것입니다.
CHAPTER 1 러스트 동시성의 기초
1.1 러스트의 스레드
1.2 범위 스레드
1.3 스레드 소유권과 레퍼런스 카운팅
1.4 소유권 대여와 데이터 경합
1.5 내부 가변성
1.6 스레드 안전성: Send와 Sync
1.7 잠금: 뮤텍스와 RwLock
1.8 대기: 파킹과 조건 변수
요점 정리

CHAPTER 2 아토믹
2.1 아토믹한 데이터 load 및 store 연산
2.2 fetch-and-modify 연산
2.3 compare-and-exchange 연산
요점 정리

CHAPTER 3 메모리 순서
3.1 메모리 순서 재정렬과 최적화
3.2 메모리 모델
3.3 happens-before 관계
3.4 느슨한 메모리 순서
3.5 해제 순서와 획득 순서
3.6 소비 순서
3.7 순차적으로 일관된 순서
3.8 펜스
3.9 자주 발생하는 오해
요점 정리

CHAPTER 4 스핀 락 구현해보기
4.1 가장 간단한 구현체
4.2 Unsafe 스핀 락
4.3 잠금 가드를 사용한 안전한 인터페이스
요점 정리

CHAPTER 5 채널 구현해보기
5.1 간단한 뮤텍스 기반 채널
5.2 언세이프 원샷 채널
5.3 런타임 검사를 통한 안전성
5.4 타입을 사용한 안전성
5.5 할당을 피하기 위한 소유권 대여
5.6 차단
요점 정리

CHAPTER 6 Arc 구현해보기
6.1 기본적인 레퍼런스 카운팅
6.2 위크 포인터
6.3 최적화
요점 정리

CHAPTER 7 프로세서 이해하기
7.1 프로세서 명령어
7.2 캐싱
7.3 재정렬
7.4 메모리 순서
요점 정리

CHAPTER 8 운영체제의 기본 요소
8.1 커널 인터페이스
8.2 pOSIX
8.3 리눅스
8.4 맥OS
8.5 윈도우
요점 정리

CHAPTER 9 잠금 구현해보기
9.1 뮤텍스
9.1.1 시스템 콜 피하기
9.1.2 좀 더 최적화해보기
9.1.3 벤치마킹
9.2 조건 변수
9.2.1 시스템 콜 피하기
9.2.2 가짜 깨우기 피하기
9.3 읽기/쓰기 잠금
9.3.1 쓰기 스레드의 무의미한 반복 피하기
9.3.2 쓰기 고갈 피하기

CHAPTER 10 아이디어와 제안
10.1 세마포어
10.2 RcU
10.3 잠금 없는 연결 리스트
10.4 큐 기반 잠금
10.5 parking lot 기반 잠금
10.6 순차 잠금
10.7 교육용 자료

러스트 언어로 안전성과 성능을 동시에 극대화하다
이 책은 동시성을 최대한 활용하여 효율적인 코드를 작성하기 위해 Atomic과 Lock을 중심으로 실무 지식을 제공하는 러스트 핵심 가이드입니다. Atomic과 Lock 연산의 활용법은 물론, Mutex를 사용하여 안전하게 데이터에 접근하는 방법에 대한 핵심 원칙까지 소개합니다. 뿐만 아니라, 동시성 코드에서 중요한 메모리 순서와 관련된 개념을 자세히 설명하고 있어 여러 스레드 간에 데이터를 안전하게 공유하거나 수정하기 위한 Arc와 Mutex에 대한 심층적인 내용도 체계적으로 배워나갈 수 있습니다. 이 책을 통해 동시성 프로그래밍에 가장 최적화된 러스트를 활용하여 다양한 동시성 문제에 유연하게 대응하고 안전한 소프트웨어를 개발하는 데 필요한 기술을 습득하길 바랍니다.

★이 책의 내용
● 운영체제의 지원을 받아 Lock 구현하기
● Mutex, Atomic, 조건 변수, 메모리 순서
● 자체 Lock 및 동기화 기본 요소를 구축하기
● 인텔 및 ARM 프로세서에서 Atomic 연산 활용하기
● 러스트의 타입 시스템이 동시성 프로그램을 작동하는 방법
● 동시성, Atomic, Lock을 포함하는 코드를 올바르게 작성하는 방법

**

추천사

이 유명한 책을 드디어 한국어로 접할 수 있게 되었습니다! 꼭 러스트 공부가 아니더라도, 동시성 프로그래밍 혹은 저수준 메모리 모델에 대해 알고 싶은 분들에게 추천드립니다.
조경민, KAIST 동시성 및 병렬성 연구실

이 책은 러스트를 이용한 동시성 프로그래밍 방법뿐만 아니라 다양한 예제를 통해 그 내부 원리까지 자세히 설명합니다. 메모리 장벽이나 재정렬의 기본적인 지식부터 실제 코드까지 쉽게 이해할 수 있도록 구성되어 있어, 동시성 프로그래밍을 근본 원리부터 배우고 싶은 사람에게 큰 도움이 될 것입니다.
김기오, 라인플러스

이 책에서는 러스트의 동시성이 내부적으로 어떻게 동작하는지에 대해 Deep-dive하게 다가가서 러스트가 다루는 동시성의 철학까지도 느낄 수 있습니다.
김동진, 한화정밀기계 솔루션개발팀

단순히 코드를 작성하는 것을 넘어, 프로세서와 운영체제에 대한 깊은 이해를 통해 동시성 프로그래밍이 요구하는 핵심 요소들을 배울 수 있습니다.
박태준, 둡
러스트의 메모리 모델 및 동시성 도구들에 대한 내부 구현을 심도 있게 설명하는 도서입니다. 러스트의 기초를 알고 있는 상태에서 Arc나 Mutex 같은 동시성 도구들이 어떻게 동작하는지 평소에 궁금하셨던 분이라면 이 책을 통해 강력한 인사이트를 얻을 수 있습니다.
이원규, 삼성전자 Cloud팀(MX)

본서는 동시성 도구의 내부가 어떻게 구현되어 있는지, 아키텍처나 OS별 특성을 어떻게 추상화하는지에 대해 깊이 있게 설명하고 있습니다.
차정윤, 삼성전자 S/W인프라개발그룹(MX)

작가정보

저자(글) 마라 보스

(Mara Bos)
러스트 라이브러리 팀의 리더. 러스트 표준 라이브러리를 유지하고 러스트에서 실시간 제어 시스템을 구축합니다. 그녀가 설립한 회사 Fusion Engineering에서 수년간 동시성 시스템을
운영했습니다. 또한 러스트 시스템에서 가장 많이 사용되는 라이브러리를 유지하고 안전에 중요한 시스템을 매일 작업하면서 실무에 실제로 적용할 수 있는 경험을 쌓았습니다.

SAP Labs Korea의 백엔드 개발자. 한 줄의 코드가 세상을 더 나은 곳으로 바꿀 수 있다고 믿
으며, 많은 이에게 지식을 전파하기 위해 여러 기업과 대학을 오가며 강연을 하고 있습니다. 최근에는 프로그래머스 스쿨에서 ‘파이썬 프로그래머를 위한 러스트 입문’ 온라인 강의를 진행습니다. 이 외에도 클래스 101에서 ‘파이썬 기초부터 업무 자동화’, 베어유에서 ‘React App 만들기’ 등 온라인 교육 경력이 다수 있습니다.

이 상품의 총서

Klover리뷰 (0)

Klover리뷰 안내
Klover(Kyobo-lover)는 교보를 애용해 주시는 고객님들이 남겨주신 평점과 감상을 바탕으로, 다양한 정보를 전달하는 교보문고의 리뷰 서비스입니다.
1. 리워드 안내
구매 후 90일 이내에 평점 작성 시 e교환권 100원을 적립해 드립니다.
  • - e교환권은 적립일로부터 180일 동안 사용 가능합니다.
  • - 리워드는 1,000원 이상 eBook, 오디오북, 동영상에 한해 다운로드 완료 후 리뷰 작성 시 익일 제공됩니다.
  • - 리워드는 한 상품에 최초 1회만 제공됩니다.
  • - sam 이용권 구매 상품 / 선물받은 eBook은 리워드 대상에서 제외됩니다.
2. 운영 원칙 안내
Klover리뷰를 통한 리뷰를 작성해 주셔서 감사합니다. 자유로운 의사 표현의 공간인 만큼 타인에 대한 배려를 부탁합니다. 일부 타인의 권리를 침해하거나 불편을 끼치는 것을 방지하기 위해 아래에 해당하는 Klover 리뷰는 별도의 통보 없이 삭제될 수 있습니다.
  • 도서나 타인에 대해 근거 없이 비방을 하거나 타인의 명예를 훼손할 수 있는 리뷰
  • 도서와 무관한 내용의 리뷰
  • 인신공격이나 욕설, 비속어, 혐오 발언이 개재된 리뷰
  • 의성어나 의태어 등 내용의 의미가 없는 리뷰

구매 후 리뷰 작성 시, e교환권 100원 적립

문장수집

문장수집 안내
문장수집은 고객님들이 직접 선정한 책의 좋은 문장을 보여 주는 교보문고의 새로운 서비스 입니다. 교보eBook 앱에서 도서 열람 후 문장 하이라이트 하시면 직접 타이핑 하실 필요 없이 보다 편하게 남길 수 있습니다. 마음을 두드린 문장들을 기록하고 좋은 글귀들은 ‘좋아요’ 하여 모아보세요. 도서 문장과 무관한 내용 등록 시 별도 통보없이 삭제될 수 있습니다.
리워드 안내
  • 구매 후 90일 이내에 문장 수집 등록 시 e교환권 100원을 적립해 드립니다.
  • e교환권은 적립일로부터 180일 동안 사용 가능합니다.
  • 리워드는 1,000원 이상 eBook에 한해 다운로드 완료 후 문장수집 등록 시 제공됩니다.
  • 리워드는 한 상품에 최초 1회만 제공됩니다.
  • sam 이용권 구매 상품/오디오북·동영상 상품/주문취소/환불 시 리워드 대상에서 제외됩니다.

구매 후 문장수집 작성 시, e교환권 100원 적립

    교보eBook 첫 방문을 환영 합니다!

    신규가입 혜택 지급이 완료 되었습니다.

    바로 사용 가능한 교보e캐시 1,000원 (유효기간 7일)
    지금 바로 교보eBook의 다양한 콘텐츠를 이용해 보세요!

    교보e캐시 1,000원
    TOP
    신간 알림 안내
    러스트 동시성 프로그래밍: Atomic과 Lock으로 안전하고 효율적인 동시성 코드 작성하기 웹툰 신간 알림이 신청되었습니다.
    신간 알림 안내
    러스트 동시성 프로그래밍: Atomic과 Lock으로 안전하고 효율적인 동시성 코드 작성하기 웹툰 신간 알림이 취소되었습니다.
    리뷰작성
    • 구매 후 90일 이내 작성 시, e교환권 100원 (최초1회)
    • 리워드 제외 상품 : 마이 > 라이브러리 > Klover리뷰 > 리워드 안내 참고
    감성 태그

    가장 와 닿는 하나의 키워드를 선택해주세요.

    사진 첨부(선택) 0 / 5

    총 5MB 이하로 jpg,jpeg,png 파일만 업로드 가능합니다.

    신고/차단

    신고 사유를 선택해주세요.
    신고 내용은 이용약관 및 정책에 의해 처리됩니다.

    허위 신고일 경우, 신고자의 서비스 활동이 제한될 수
    있으니 유의하시어 신중하게 신고해주세요.


    이 글을 작성한 작성자의 모든 글은 블라인드 처리 됩니다.

    문장수집 작성

    구매 후 90일 이내 작성 시, e교환권 100원 적립

    eBook 문장수집은 웹에서 직접 타이핑 가능하나, 모바일 앱에서 도서를 열람하여 문장을 드래그하시면 직접 타이핑 하실 필요 없이 보다 편하게 남길 수 있습니다.

    P.
    러스트 동시성 프로그래밍: Atomic과 Lock으로 안전하고 효율적인 동시성 코드 작성하기
    저자 모두보기
    저자(글)
    낭독자 모두보기
    sam 이용권 선택
    님이 보유하신 이용권입니다.
    차감하실 sam이용권을 선택하세요.
    sam 이용권 선택
    님이 보유하신 이용권입니다.
    차감하실 sam이용권을 선택하세요.
    sam 이용권 선택
    님이 보유하신 프리미엄 이용권입니다.
    선물하실 sam이용권을 선택하세요.
    결제완료
    e캐시 원 결제 계속 하시겠습니까?
    교보 e캐시 간편 결제
    sam 열람권 선물하기
    • 보유 권수 / 선물할 권수
      0권 / 1
    • 받는사람 이름
      받는사람 휴대전화
    • 구매한 이용권의 대한 잔여권수를 선물할 수 있습니다.
    • 열람권은 1인당 1권씩 선물 가능합니다.
    • 선물한 열람권이 ‘미등록’ 상태일 경우에만 ‘열람권 선물내역’화면에서 선물취소 가능합니다.
    • 선물한 열람권의 등록유효기간은 14일 입니다.
      (상대방이 기한내에 등록하지 않을 경우 소멸됩니다.)
    • 무제한 이용권일 경우 열람권 선물이 불가합니다.
    이 상품의 총서 전체보기
    네이버 책을 통해서 교보eBook 첫 구매 시
    교보e캐시 지급해 드립니다.
    교보e캐시 1,000원
    • 첫 구매 후 3일 이내 다운로드 시 익일 자동 지급
    • 한 ID당 최초 1회 지급 / sam 이용권 제외
    • 네이버 책을 통해 교보eBook 구매 이력이 없는 회원 대상
    • 교보e캐시 1,000원 지급 (유효기간 지급일로부터 7일)
    구글북액션을 통해서 교보eBook
    첫 구매 시 교보e캐시 지급해 드립니다.
    교보e캐시 1,000원
    • 첫 구매 후 3일 이내 다운로드 시 익일 자동 지급
    • 한 ID당 최초 1회 지급 / sam 이용권 제외
    • 구글북액션을 통해 교보eBook 구매 이력이 없는 회원 대상
    • 교보e캐시 1,000원 지급 (유효기간 지급일로부터 7일)