광란의 공부 일지

  • 홈
  • 태그
  • 방명록

read write lock 1

16. Reader-Writer Lock

이제 서버 엔진부에서 사용할 락을 만들어 보자. 지금까지 사용했던 표준 mutex는 일단 재귀적으로 락을 잡을 수 없다. 이부분은 재귀적으로 락을 잡을 수 있도록 하는 recursive_mutex를 사용하면 된다고 할 수도 있지만 다른 문제가 있다.변하지 않는 데이터가 있고 모든 스레드가 이 데이터를 읽기만 한다면 굳이 락을 걸어서 사용할 필요가 없다. 하지만 굉장히 드물게(예를들어 1주일 또는 1달) 데이터에 변동이 있다면 분명 충돌이 날 것이고 이를 방지하기 위해서는 락을 걸어주어야 하는데 고작 이 1번을 위해서 락을 걸어서 사용해야 하나?라고 생각할 수 있을 것이다.이때 사용하는 것이 Reader-Writer Lock이다. read할 때에는 락을 걸지 않은 것처럼 사용하다가 write할 때만 락을 ..

서버/멀티스레드 2024.08.02
이전
1
다음
더보기
프로필사진

광란의 공부 일지

프로그래밍 공부, 프로젝트를 하며 정리한 블로그입니다. 댓글로 다양한 의견 남겨주시면 감사드리겠습니다.

  • 분류 전체보기 (49) N
    • 서버 (49) N
      • 멀티스레드 (17)
      • 메모리 관리 (8)
      • 네트워크 (8)
      • 네트워크 라이브러리 (10)
      • 패킷 직렬화 (5) N
      • 동기화 (1)

Tag

Lock, memory pool, sendbuffer pool, sendbuffer, 멀티스레드, 스레드, 패킷직렬화, event-based synchronization, wide byte character set, packetsession, Session, 패킷 직렬화, packethandler, tls, 데드락, recvbuffer, multi byte character set, Deadlock, 스마트포인터, buffer helper,

최근글과 인기글

  • 최근글
  • 인기글

최근댓글

공지사항

페이스북 트위터 플러그인

  • Facebook
  • Twitter

Archives

Calendar

«   2025/07   »
일 월 화 수 목 금 토
1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31

방문자수Total

  • Today :
  • Yesterday :

Copyright © Kakao Corp. All rights reserved.

티스토리툴바