-
20250509 개발 일지. 소켓 관련 게시글 읽기.개발일지/C# 채팅 프로그램 2025. 6. 10. 12:47728x90
# 마샬링
데이터를 변환시키는 일련의 과정. 직렬화보다 큰 단위.
직렬화는 데이터를 바이트스트림으로 변환하는 과정
다른 언어에서의 데이터 전달도 마샬링으로 칭하는 듯
# SocketAsyncEventArgs 메모리 릭 현상
소켓인수객체를 재사용하지 않거나 인수의 버퍼를 초기화하지 않으면 메모리릭 발생
인수 풀링, 버퍼 풀링 필요
SocketAsyncEventArgs 콜백함수 제거 -=
SetBuffer(null, 0, 0) 으로 버퍼 해제
객체 소멸시 Dispose 함수 호출 필요
https://shakddoo.tistory.com/entry/c-SocketAsyncEventArgs-%EB%A9%94%EB%AA%A8%EB%A6%AC-%EB%A6%AD-%ED%98%84%EC%83%81
# 데드 레커닝
네트워크 레이턴시 사이에 예측가능한 행동을 계산해서 보간함
https://blog.naver.com/imays/223388177307
# IOCP
https://jettstream.tistory.com/342
# EAP 방식 소켓
https://learn.microsoft.com/ko-kr/dotnet/api/system.net.sockets.socketasynceventargs?view=net-9.0
https://blog.danggun.net/3596
https://www.codeproject.com/Articles/83102/C-SocketAsyncEventArgs-High-Performance-Socket-Cod[.NET] SocketAsyncEventArgs - 'SocketAsyncEventArgs'의 이해
.net에서 소켓 프로그래밍을 하려면 몇 가지 선택사항이 있는데 그중 하나가 'SocketAsyncEventArgs'입니다. 전에 '[.Net] SocketAsyncEventArgs - 큰 데이터(Large Data) 전송할 때 생기는 문제'라는 글에서 버퍼크
blog.danggun.net
CodeProject
For those who code
www.codeproject.com
# 오늘 한 일
msdn SocketAsyncEventArgs 분석
소켓 클라이언트 코드 작성
실시간 게임 서버 관련 기사 읽기
IOCP 관련 읽기
IOCP 관련은 읽어도 무슨 소리인지 잘 모르겠다.
I/O 완료 포트이고 읽기 쓰기를 위해 최적화(읽기, 쓰기를 위해 사용되는 쓰레드 및 포트를 최소화 또는 재사용)된 소켓 API라고 생각중
EAP는 최대한 버퍼 재사용, 인수객체 풀 사용을 해야 메모리 릭이 발생하지 않고 최대 성능을 냄
게임 서버 관련 게시글을 많이 읽었으나 여러가지 많이 해야하고 겁주는 내용이 많아 일단 뭔가 계속 만들어내는 방향으로 진행예정728x90'개발일지 > C# 채팅 프로그램' 카테고리의 다른 글
20250516 개발일지. 소켓 관련 게시글 읽기 6. (0) 2025.06.11 20250515 개발일지. 소켓 관련 게시글 읽기 5. (0) 2025.06.11 20250514 개발일지. 소켓 관련 게시글 읽기 4. (0) 2025.06.11 20250513 개발일지. 소켓 관련 게시글 읽기 3. (1) 2025.06.10 20250512 개발일지. 소켓 관련 게시글 읽기 2. (0) 2025.06.10