inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

[C++과 언리얼로 만드는 MMORPG 게임 개발 시리즈] Part4: 게임 서버

Memory Pool #1

할당 범위? 오류? 질문 있습니다. 메모리 매니저 생성자 부분

763

장계탕

작성한 질문수 3

1

강의영상 23;29초을 보면 두 번째 루프가 1024부터 시작함

0~1024바이트까지는 32바이트 단위로 증가

1025~2048바이트 까지는 128바이트 단위로 증가

즉 1025바이트가 필요하면 1024+128바이트의 메모리 풀에서 메모리를 가져다 쓴다(메모리 매니저의 pools의 1025번지는 1024+128단위로 할당되는 메모리 풀을 가리킨다.)
로 의도하셨다고 생각이 듭니다.

하지만 size=1024로 대입하는 구문을 빼면

size=1024+32 부터 시작합니다.

따라서 사용자가 1025바이트가 필요로 하면

메모리 매니저의 pools의 1025번지에는 1024+32바이트의 메모리풀에서 pop해서 사용할 것 같습니다.
의도했던것에서 값이 밀렸기에 3번째 루프에서 size는 2080에서 시작하고

2080 > 2336>2592 >...>3872 > 4128루프탈출

그렇기에 3873~4096번지까지는 NULL이들어갑니다.

 루프시작시에 1024, 2048부분이 들어가야 할 것 같습니다.

 

네트워크 MMORPG windows-server MMORPG network

답변 1

2

Rookiss

네 확인 감사합니다.
서버 측에 몇몇 버그들이 있는데 제보받은걸 모아서 수정 영상을 올려야겠네요

0

장계탕

답변감사합니다.

Memory Pool에서 오버플로우 질문입니다.

0

63

2

포토폴리오 및 진로 관련하여 고민입니다.

0

112

1

포토폴리오 관련 고민입니다.

0

62

1

실무에서도 alloc, 스마트포인터 등을 구현해서 쓰는지 궁금합니다.

0

82

2

성능 테스트 결과

0

103

2

게임 서버 Stateful, Stateless 진로 고민

0

121

1

WaitOnAddress와 Sleep의 차이 질문

0

83

1

궁금한거 있습니다.

0

82

2

JobTimer 구동 스레드

0

107

2

TryPop() 동작 관련 질문

0

81

1

로드맵 C#서버 C++서버 방향성 질문

0

148

2

스레드 id를 출력할떄 메인스레드 id도 출력되나요?

0

73

1

생명주기를 위한 의도적 복사

0

86

2

락프리의 실무에서 사용 질문

0

139

2

32bit threadID와 16비트 상위 WriteFlag에 대해

0

101

2

mutex와 sleep 차이점

0

117

1

실무에서는 어떠한 코드 스타일을 사용하는지 궁금합니다

0

152

2

Stomp Allocator의 Release함수에 대한 질문입니다.

0

96

1

공부법 관련해서

0

183

2

MakeShared 함수 관련

0

114

1

지금까지 서버코어에서 만든 내용에 대해 궁금한 점이 있어서 질문 드립니다.

0

144

2

운영체제관련 질문입니다

0

131

1

send하려는 데이터 크기가 크면 memcpy에서 문제가 발생할 것 같습니다.

0

117

2

메모리 풀 질문있습니다.

0

124

1