• 카테고리

    질문 & 답변
  • 세부 분야

    게임 프로그래밍

  • 해결 여부

    미해결

전송 순서 관련 질문입니다.

22.10.18 21:35 작성 조회수 219

0

Send 코드를 보던 중 궁금증이 생겼습니다.

컨텐츠 구현시 정확히 Send를 호출한 순서대로 패킷이 가야 하는 경우가 있는가? 입니다.

만약 1번 스레드가 Send 호출 후 connected 확인만 하고 멈추고, 2번 스레드가 이후에 Send를 호출해 lock을 잡을 경우

1->2 순서로 호출했지만 데이터는 2->1 순서로 전송될 것입니다.

이렇게 자세하게 따져야 하는 경우가 있는지, 있다면 send 시작부터 exchage까지 lock을 잡으면 해결되는 문제인지 궁금합니다.

답변 1

답변을 작성해보세요.

0

그 부분은 살짝 경계선에 있는데요.
멀티쓰레드라고 정말 모든게 멀티쓰레드로 돌아갈 순 없고
지역 단위, 혹은 Actor 단위로 JobQueue를 두고
Actor 사이의 일감은 순차적으로 처리해야 합니다.
일감의 순서가 정해지면 사실 패킷 송신은 Lock잡고 처리해도 되긴 합니다.