Notice
Recent Posts
Recent Comments
Link
관리 메뉴

λͺ©λ‘μ „체 κΈ€ (1099)

KoreanFoodie's Study

[C++ κ²Œμž„ μ„œλ²„] 4-10. PacketSession

[C++ κ²Œμž„ μ„œλ²„] 4-10. PacketSession 핡심 : 1. κ°„λ‹¨ν•˜κ²Œ νŒ¨ν‚·μ„ λ§Œλ“€μ–΄ 보자. 사싀 데이터에 size 와 id(ν”„λ‘œν† μ½œ) 을 ν—€λ”λ‘œ 뢙이면, 그게 기본적인 νŒ¨ν‚·μ˜ ν˜•νƒœλ‹€. 2. Session 을 μ œκ±°ν•˜κ³  넣을 λ•ŒλŠ” κΈ°μ‘΄ μ»¨ν…Œμ΄λ„ˆμ˜ 정합성이 깨지지 μ•Šλ„λ‘ μ£Όμ˜ν•˜μž. 이λ₯Ό νšŒν”Όν•˜κΈ° μœ„ν•΄ 클라가 μ’…λ£Œλ  λ•Œ, λ°”λ‘œ μ„Έμ…˜μ„ μ œκ±°ν•˜μ§€ μ•Šκ³ , λŒ€μ‹  Disconnect 이벀트λ₯Ό λ“±λ‘λ§Œ ν•œ λ‹€μŒ λ‹€λ₯Έ μ“°λ ˆλ“œκ°€ Dispatch 될 λ•Œ μ„Έμ…˜μ„ μ œκ±°ν•˜κ²Œ λ§Œλ“€ μˆ˜λ„ μžˆλ‹€. μ €λ²ˆκΉŒμ§€λŠ” 버퍼에 μš°λ¦¬κ°€ 보내렀고 ν•˜λŠ” λ¬Έμžμ—΄μ„ κ·Έλƒ₯ λ‹΄μ•„μ„œ λ³΄λƒˆλ‹€. 그런데 μ‹€μ œ κ²Œμž„μ—μ„œλŠ” 이 데이터가 무슨 데이터인지에 λŒ€ν•œ 정보가 ν•„μš”ν•œλ°, ν”νžˆ μš°λ¦¬λŠ” 이것을 νŒ¨ν‚·μ΄λΌκ³  ν•œλ‹€. 즉, ν•΄λ‹Ή 정보에 λŒ€ν•œ 메타 정보(ν”νžˆ 헀더 뢀뢄에..

Game Dev/Game Server 2023. 12. 14. 18:50
[C++ κ²Œμž„ μ„œλ²„] 4-3. Server Service

[C++ κ²Œμž„ μ„œλ²„] 4-3. Server Service 핡심 : 1. IocpObject λŠ” μ•ˆμ „μ„±μ„ μœ„ν•΄ shared_ptr λ₯Ό μ°¨μš©ν•˜λŠ” 것이 μ’‹λ‹€. 2. μ„œλ²„λŠ” ν΄λΌμ΄μ–ΈνŠΈμ™€λ§Œ ν†΅μ‹ ν•˜μ§€ μ•Šκ³ , λ‹€λ₯Έ μ„œλ²„λ‚˜ DB μ„œλ²„μ™€λ„ 톡신할 수 μžˆλ‹€. λ”°λΌμ„œ μš©λ„μ— 따라 μ„Έμ…˜μ˜ 생성 및 관리λ₯Ό ν•  수 μžˆλ„λ‘, μ„œλΉ„μŠ€λ₯Ό λ§Œλ“€μ–΄ μ£Όλ©΄ νŽΈλ¦¬ν•˜λ‹€. μš°λ¦¬λŠ” 이전에 IOCP Core 클래슀λ₯Ό λ§Œλ“€μ–΄ ν•Έλ“€, μ„Έμ…˜, μ†ŒμΌ“κ³Ό κ΄€λ ¨ν•œ κΈ°λŠ₯듀을 κ°„λ‹¨νžˆ λ‹€λ£° 수 μžˆλ„λ‘ λ§Œλ“€μ—ˆλ‹€. 그런데 이전에 μš°λ¦¬κ°€ λ§Œλ“  IOCP ν΄λž˜μŠ€λŠ” λ¦¬μŠ€λ„ˆμ—μ„œ Accept λ₯Ό λ°›μœΌλ©΄ μ„Έμ…˜μ„ μž„μ˜λ‘œ μƒμ„±ν•˜λŠ” μ‹μœΌλ‘œ κ΅¬ν˜„μ΄ λ˜μ–΄ μžˆλ‹€. 그런데 사싀 μ„Έμ…˜μ€ νŠΉμ • μ„œλ²„μ— μ’…μ†λ˜λ©΄ μžμœ λ„κ°€ λ–¨μ–΄μ§€κ²Œ λœλ‹€. μš°λ¦¬λŠ” 일반적으둜 κ²Œμž„ μ„œλ²„λΌκ³  ν•˜λ©΄ 'ν΄λΌμ΄μ–ΈνŠΈ μ„œλ²„' μ‚¬μ΄μ˜ ..

Game Dev/Game Server 2023. 12. 5. 16:57
μ½”λ”©ν…ŒμŠ€νŠΈ λŒ€λΉ„ μ•Œκ³ λ¦¬μ¦˜ λͺ©λ‘ 및 링크 정리

μ½”λ”© ν…ŒμŠ€νŠΈλ₯Ό λŒ€λΉ„ν•˜μ—¬, μ•Œμ•„μ•Ό ν•  μ•Œκ³ λ¦¬μ¦˜ λͺ©λ‘μ„ μ •λ¦¬ν•˜λ©° 읽어보면 쒋을 λΈ”λ‘œκ·Έ 링크듀을 μ—°κ²°ν•΄ λ³΄μ•˜λ‹€(μ œκ°€ μž‘μ„±ν•œ 것은 μ•„λ‹˜). μ½μ–΄λ΄„μ§ν•œ 글듀에 링크λ₯Ό 달은 κ²ƒμ΄λ‹ˆ, μ½”ν…Œλ‘œ 손을 μ˜ˆμ—΄ν•˜κΈ° 전에 λ‘λ‡Œλ₯Ό μ˜ˆμ—΄ν•˜λŠ”λ° μ‚¬μš©ν•˜λ©΄ μ’‹κ² λ‹€! 🀣 κΈ°λ³Έ μ •λ ¬ - ν€΅μ†ŒνŠΈ - νž™μ†ŒνŠΈ - λ¨Έμ§€μ†ŒνŠΈ μš°μ„ μˆœμœ„ν(νž™) 이뢄탐색 DFS(깊이 μš°μ„  탐색) BFS(λ„ˆλΉ„ μš°μ„  탐색) λ°±νŠΈλž˜ν‚Ή 그리디(νƒμš•λ²•) λˆ„μ ν•© νˆ¬ν¬μΈν„°(두 포인터) μœ„μƒμ •λ ¬ DP 심화 μ—°κ²° μ„±λΆ„ (Connected Component) λ‹€μ΅μŠ€νŠΈλΌ ν”Œλ‘œμ΄λ“œ 와샬 벨만 ν¬λ“œ μœ λ‹ˆμ˜¨-νŒŒμΈλ“œ (Disjoint set) MST(μ΅œμ†Œ μŠ€νŒ¨λ‹ 트리) ν”„λ¦Ό 크루슀칼 μ„Έκ·Έλ¨ΌνŠΈ 트리 트라이 이뢄 κ·Έλž˜ν”„(Bipartite Graph). KMP CS CS 기초 지식

Data Structures, Algorithm 2023. 11. 17. 19:44