소개
안녕하세요~
Game Client, Game Server, Embedded, Blockchain 개발 등등..
다양한 경험이 있는 20년차 서버 프로그래머입니다.
현재 멘티스코에서 서버1팀 팀장으로 재직중입니다.
강의
전체2수강평
- 쓰레드에 대한 심화 강의 감사합니다. 헷갈리는 부분을 잘 이해할 수 있었습니다.
MachineLearning
2024.03.29
0
- 스레드 개념을 이해하는데 많이 도움이 됬습니다
ss
2023.12.20
1
게시글
질문&답변
2024.03.03
어떻게 상호배제가 이루어지는지 잘 이해가 안갑니다
수정된 코드도 문제가 있습니다. 의심하신 상황이 발생 할 수 있습니다. Section7의 코드는 문제가 있고 Interlocked 클래스만 가지고 해결할 수 없습니다. writeCount와 readCount의 비교와 변경이 Atomic Operation이어야 하기 때문에 반드시 lock이 필요합니다. 혼란을 드려 죄송합니다. ㅠㅠ
- 1
- 2
- 134
질문&답변
2024.03.02
어떻게 상호배제가 이루어지는지 잘 이해가 안갑니다
죄송합니다. 코드가 완전히 잘못됐네요. 코드를 수정하여 github에 올렸습니다. Interlocked.CompareExchange 함수를 사용하여 하나의 쓰레드만 Write를 하도록 수정하였습니다.
- 1
- 2
- 134
질문&답변
2024.03.02
임계영역에 2개 이상의 스레드가 올 수 있는지요?
답변은 그럴수 없습니다. 임계영역에서는 반드시 한 스레드만 실행가능합니다. 코드를 보면 Wait에서 Blocking이 되기 때문에 DeadLock이라고 생각하실수도 있는데 Section4 코드에서 PulseAll과 Wait 함수 부분에 BreakPoint를 거시고 F10으로 한 스텝씩 확인해보시면 어떤 순서로 실행되는지 확인이 가능합니다. 확인해보시면 Monitor.Wait이 호출되면 lock이 해제되는걸 알수 있습니다.
- 0
- 2
- 136
질문&답변
2024.02.04
1_Process와 Thread protobuf 부분 질문
Protobuf는 *.Idl 파일을 작성하고 컴파일을 하면 원하는 언어의 모델들을 뽑아줍니다. 이렇게 나온 모델들을 서로 공유해야 합니다. 하지만 문서로 서로 공유할 때 보다 훨씬 문제가 줄어든다는 거지요
- 0
- 1
- 98
질문&답변
2024.01.31
opensea 민팅
해당 NFT 오픈씨 주소를 알려주시겠습니까?
- 0
- 2
- 151