• 카테고리

    질문 & 답변
  • 세부 분야

    게임 프로그래밍

  • 해결 여부

    미해결

데드락 질문 드립니다.

22.03.08 00:24 작성 조회수 123

0

Server Session 쪽
OnRecvCompleted()
{
BytesTransferred 이부분이 0으로 오면서 Disconnect 가 호출이 되고나면
}
 
데드락이 걸리는 경우가 있는데
데드락 1
 
데드락2
 
데드락3
 
총 3군데서 더이상 진행이 안되는거 같은데
혹시 어디를 잘못 건드리면 이런 현상이 나오는지 알수 있을까요?
 
강의 4강 소스에 7강 google proto buffer 붙어서 뭐좀 만들어 보고있는데
접속을 끊고 다시 붙고 이런거 몇번 반복하니 서버가 멈추네요
 
새로운 클라이언트가 접속을 하면 서버에 접속까지만 되고 그이상은 진행이 안되네요.
 
서버실행중 콘솔창 마우스로 긁으면 100% 확률로 제현이 됩니다.
 
이거 마우스로 만진다고 서버에 문제가 될수 있나요?
 

답변 1

답변을 작성해보세요.

0

서버실행중 콘솔창 마우스로 긁으면 100% 확률로 제현이 됩니다.
이거 마우스로 만진다고 서버에 문제가 될수 있나요?

ㅎㅎ 네 절대 안됩니다.
콘솔 프로그램을 클릭하면, 해당 프로그램이 멈추고 대기하게 됩니다.
lock을 잡은 상태에서 멈추면, 절대 락을 풀어주지 않을테니 문제가 되는 것이죠.
실제 서버는 콘솔 프로그램으로 띄우진 않고,
[서비스]로 백그라운드에서 실행하면 됩니다.