|
맥스만들던 느낌으로 하면 된다는..
용맨소녀 님이 쓰신 글 :
: 인디는 몇년째 접하고 있는데도 머리가 나쁜건지 왜 이렇게 이해가 잘 안되는지..ㅡ.ㅡ
:
: Lyn 님이 쓰신 글 :
: : 아뇨 걸 필요 없죠..
: :
: : 두번 처리루틴을 탄다는 것 차제가 말이 안되는...
: :
: :
: : 용맨소녀 님이 쓰신 글 :
: : : 테스트를 해보니까요..
: : :
: : : 메시지 패킷 처리부의 LockList내부에 Sleep(100000); 정도 걸어놓은 다음, 그 LockList에 속해있는 유저가 방만들기 패킷를 보내니까 그건 되더라고요.. (방만들기 후 응답 패킷 송신시에는 LockList 걸지 않음. 크리티컬 섹션이니까 당연한 결과겠죠..)
: : :
: : : 이러면 결국 서버가 패킷을 전송할 때 하나의 접속 세션에 2중으로 처리가 부과될 수 있겠더라고요..
: : :
: : : 결국 클라이언트로 패킷을 보낼 때는 한명에게 보내건 여러명에게 보내건 간에 LockList를 걸어야 하는게 맞는건가요?
: : :
: : :
: : : Lyn 님이 쓰신 글 :
: : : : LockList 를 호출하면 Critical Section 으로 Enter 하게 됩니다.
: : : :
: : : : 즉. UnLockList 를 호출하여 CriticalSection 밖으로 나갈 때 까지 다른 유저들은 전부 대기타게 되죠.
: : : :
: : : : 용맨소녀 님이 쓰신 글 :
: : : : : LockList 쓰는 이유가 인증된 접속 세션에게만 작업을 시키기 위함이라 아는데요..
: : : : :
: : : : : 이런 경우는 어떤가요?
: : : : :
: : : : : 유저가 서버로 메시지를 보내면 모든 유저에게 메시지를 되돌려주는 구조라고 가정하고요..
: : : : :
: : : : : 서버에 10명의 유저가 접속해 있고, 10명의 유저가 동시에 메시지를 보내면 서버에서도 동시에 10개의 메시지를 모든 유저에게 날리려고 하는 경우가 생기겠지요..
: : : : :
: : : : : 이럴 경우 하나의 접속 세션에 메시지 전송 작업이 중복으로 부과될 것 같은데요.. LockList가 이런 상황도 방지하는지요?
: : : : :
: : : : : 둘 다 동시에 LockList가 걸리면 둘중 하나는 대기 중인 상태에서 나머지 하나가 UnlockList가 될때까지 대기하나요?
: : : : :
: : : : : 글이 허접이라서 뜻 전달이 될런지 모르겠습니다..ㅡ.ㅡ 답변 부탁드립니다..
|